使用字典向数据框中添加列

3

我有一个数据框 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个回答

4
使用 pd.DataFrame.assign 将字典解包为关键字参数。
df1.assign(**my_dict)

   c1  c2  c3  c4  c5
0   1   2   3   4   5

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

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接