如何根据另一列的值在熊猫中创建列

索拉布

我创建了一个新列,方法是将一列中的值添加到我从中创建此新列的列的索引中。但是,我的问题是当我在示例列上实现时代码工作正常,但是当我传递已经存在的数据帧时,它会引发错误,“只能使用标量值执行操作”。根据我发现的是代码需要 dist ,这就是它抛出错误的原因。

我尝试将数据框转换为字典或列表,但没有成功。

 df = pd.DataFrame({'Name': ['Sam', 'Andrea', 'Alex', 'Robin', 'Kia',    'Sia'], 'Age':[14,25,55,8,21,43], 'd_id_max':[2,1,1,2,0,0]})`

df['Expected_new_col'] = df.loc[df.index + df['d_id_max'].to_list, 'Age'].to_numpy()

print(df)

错误:只能使用标量值执行操作。

这是我要实现此代码的数据框:

      Weight   Name     Age     1     2   abs_max d_id_max
  0     45     Sam      14     11.0  41.0   41.0    2
  1     88     Andrea   25     30.0 -17.0   30.0    1
  2     56     Alex     55    -47.0 -34.0   47.0    1
  3     15     Robin    8      13.0  35.0   35.0    2
  4     71     Kia      21     22.0  24.0   24.0    2
  5     44     Sia      43     2.0   22.0   22.0    2
  6     54     Ryan     45     20.0  0.0    20.0    1
ignoring_gravity

像这样编写新列不会返回错误:

df.loc[df.index + df['d_id_max'], 'Age'].to_numpy() 

编辑:您应该首先格式化d_id_maxint(或float):

df['d_id_max'] = df['d_id_max'].astype(int)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

根据另一列的值在熊猫中创建新列

熊猫根据另一列中的值替换值

熊猫根据选择为条件的另一列中的值创建一列

根据熊猫中数据框的另一列的值添加一列

根据另一列的条件创建熊猫列

根据另一列熊猫的300条相邻行中的值创建新列

如何根据另一列中的值填充列?

如何根据熊猫另一列中的条件生成具有值的新列

如何在熊猫中另一列的值之间汇总一列中的值

根据另一列中的相同值组合熊猫数据框列中的文本值

根据熊猫中另一列的值创建新列

跟进-根据熊猫中另一列的值创建新列

熊猫根据另一列的值移动列数据

如何根据另一列中的间隔填充熊猫中其他列的缺失值?

如何根据行中的特定值和熊猫中的另一列对行进行分组?

在熊猫中,如何从一列中的唯一值中创建列,然后根据另一列中的值填充它?

根据另一列熊猫的值添加新列

如何根据另一列中的值填充另一列中的值?

根据另一列的值在熊猫中创建值的串联

如何根据另一列中的值创建具有“ +”或“-”的列?

熊猫根据另一列选定的值创建新列

如何根据熊猫中另一列的下限值对一列中的值求和?

如何根据另一列 SQL 中的值创建具有计数值的新列

根据熊猫中另一列上的值在数据框中创建一个新列

根据另一列中的值创建新列

根据熊猫中的缺失值创建一列

如何根据条件在熊猫中创建另一列?

如何根据熊猫中另一列的值组合字符串列表的行?

使用熊猫,如何根据另一列的值分配列中的值?

TOP 榜单

热门标签

归档