如何将新列指定为要指定的字符串

2024-04-23 18:35:56 发布

您现在位置:Python中文网/ 问答频道 /正文

如何将字符串作为newcolumn分配给pandas.assign

例如:

newcolumn = 'myColumn'
    if(newcolumn != ''):
      sourcePandas = sourcePandas.assign(newcolumn = sourcePandas[row['PrimaryColumn']].apply(func))

上面没有抛出任何错误,但创建了名为newcolumn的新列,而不是myColumn


Tags: 字符串pandasif错误rowfuncapplyassign
2条回答

试试这个。假设sourcePandas是您的数据帧

  • sourcePandas.assign()内的f'{newcolumn}':替换newcolumn =
newcolumn = 'myColumn'
    if(newcolumn != ''):
      sourcePandas = sourcePandas.assign(**{f'{newcolumn}': sourcePandas[row['PrimaryColumn']].apply(func)})

同时指定多个列

也可以使用df.assign()同时分配多个列。**用于解压字典,并将成分转换为关键字参数的键值对列表:^{}

# df  > dataframe
df.assign(**{'A': np.arange(7), 'B': np.arange(7) + 2})

参考资料

  1. https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.assign.html

enter image description here

您可以传递dict,然后使用**解压字典,将其作为关键字参数传递到^{}

例:

newcolumn = 'myColumn'
df = pd.DataFrame()
df.assign(**{newcolumn:[0,1,2]})
   myColumn
0         0
1         1
2         2

是的

newcolumn = 'myColumn'
    if(newcolumn != ''):
      sourcePandas = sourcePandas.assign(**{newcolumn: sourcePandas[row['PrimaryColumn']].apply(func)})

相关问题 更多 >