将新的字典值列添加到熊猫数据框

Posted

技术标签:

【中文标题】将新的字典值列添加到熊猫数据框【英文标题】:Add new column of dictionary values to pandas dataframe 【发布时间】:2018-05-08 20:59:18 【问题描述】:

这样做的目的是将这两个结构合并在一起: 1. 键值对字典 (string1 : string2) -- 称之为 c_dict。 2. Pandas DataFrames,其中一列包含 c_dict.keys() 的子集。让我们将此数据帧称为 c_df。

我希望最终结构是一个 DataFrame,其中字典中的字符串 2 作为额外列添加到 c_df。

例如:

    c_dict =  'A' : 'aaa', 'B' : 'bbb', 'C' : 'ccc' 
    print(c_df)

      col1 col2 col3
     0 A    43   55
     1 B    59   88

然后最终产品将是:

       col1 col2 col3 col4
     0  A    43   55  aaa
     1  B    59   88  bbb  

【问题讨论】:

【参考方案1】:

通过使用map

df['col4']=df.col1.map(c_dict)
df

  col1  col2  col3 col4
0    A    43    55  aaa
1    B    59    88  bbb

或者,使用replace

replace:

df['col4'] = df.col1.replace(c_dict)
df

  col1  col2  col3 col4
0    A    43    55  aaa
1    B    59    88  bbb

【讨论】:

以上是关于将新的字典值列添加到熊猫数据框的主要内容,如果未能解决你的问题,请参考以下文章

如何根据字典中的键值逐行向熊猫数据框添加值?

如何使用嵌套字典列表展平熊猫数据框中的列

熊猫数据框到字典

在循环中将字典附加到熊猫数据框

如何将字典附加到熊猫数据框?

将新字典添加到现有字典作为键的值[重复]