gpt4 book ai didi

list - 将一列列表添加到数据框python

转载 作者:行者123 更新时间:2023-12-01 04:49:36 25 4
gpt4 key购买 nike

我在 pandas 中有一个数据框,如下所示:

    Type      Rand      Arrival
0 0.3 4
2 0.64 3
1 0.98 12

现在,我想向其中添加一个新列,即每一行中的列表:

    Type      Rand      Arrival         Park
0 0.3 4 [5,10,15,20]
2 0.64 3 [4,9,14,19]
1 0.98 12 [6,11,16,21]

我想通过使用以下命令将它与某些值进行比较来基于“Rand”列来执行此操作:

   df.loc[ (df.Rand <= 0.4) , 'Park' ] = [5,10,15,20]
df.loc[ (df.Rand > 0.4) & (df.Rand <= 0.8) , 'Park' ] = [4,9,14,19]
df.loc[ (df.Rand > 0.8) , 'Park' ] = [6,11,16,21]

但是我收到以下错误:

  Must have equal len keys and value when setting with an iterable.

你能告诉我如何解决这个问题吗?

最佳答案

>>> df.loc[df.Rand <= 0.4, 'Park'] = pd.Series([[5, 10, 15, 20]], index=df.index)
>>> df.loc[(df.Rand > 0.4) & (df.Rand <= 0.8), 'Park'] = pd.Series([[4,9,14,19]], index=df.index)
>>> df.loc[(df.Rand > 0.8), 'Park'] = pd.Series([[6,11,16,21]], index=df.index)
>>> df
Type Rand Arrival Park
0 0 0.30 4 [5, 10, 15, 20]
1 2 0.64 3 [4, 9, 14, 19]
2 1 0.98 12 [6, 11, 16, 21]

灵感来自 [ 1 ]

关于list - 将一列列表添加到数据框python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40385692/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com