【问题标题】:How to pandas df.assign() with variable names?如何使用变量名熊猫 df.assign()?
【发布时间】:2020-01-16 22:36:16
【问题描述】:

我想在数据框中添加一个新列,其中包含来自其他数据框的值。我的新列名是一个变量,我无法对其进行硬编码。

new_column = "my_new_column_name" 
df = df.assign(new_column=other_df['Column1'].values)

问题是,我得到了一个名为new_column 的新列。 我期望的是一个名为my_new_column_name的列

任何人都可以为此提出解决方案。

【问题讨论】:

  • 为什么不只是df[new_column] = other_df['Column1'].values
  • @Chris assign 在较长的多个操作链中很有用

标签: python pandas assign variable-names


【解决方案1】:

您可以制作字典并解包:

给定df

print(df)
   col1  col2
0     1    10
1     2    20
2     3    30

new_column = "my_new_column_name" 
df = df.assign(**{new_column: df['col1'].values})
print(df)

输出:

   col1  col2  my_new_column_name
0     1    10                   1
1     2    20                   2
2     3    30                   3

【讨论】:

    猜你喜欢
    • 2022-12-16
    • 2021-11-19
    • 2021-02-02
    • 2018-12-22
    • 2018-04-15
    • 1970-01-01
    • 2017-11-18
    • 1970-01-01
    相关资源
    最近更新 更多