使用dict将列添加到数据框

时间:2018-04-04 07:36:32

标签: python pandas dictionary

我有一个数据框df1

df1 = pd.DataFrame({'c1': [1],
                    'c2': [2],
                    'c3': [3]})

我想使用字典dict

为此数据框添加列
my_dict = {'c4': 4, 'c5': 5}

所以我最终希望df1成为

df2 = pd.DataFrame({'c1': [1],
                    'c2': [2],
                    'c3': [3],
                    'c4': [4],
                    'c5': [5]})

我在SO上找到的只是将字典沿着行转换为DataFrame的示例,例如这个thread - 而不是上面问题中的列。

2 个答案:

答案 0 :(得分:4)

使用pd.DataFrame.assign将字典解压缩为关键字参数。

df1.assign(**my_dict)

   c1  c2  c3  c4  c5
0   1   2   3   4   5

答案 1 :(得分:3)

使用:

df = df1.join(pd.DataFrame([my_dict]))

或者:

df = pd.concat([df1, pd.DataFrame([my_dict])], axis=1)

print (df)
   c1  c2  c3  c4  c5
0   1   2   3   4   5