python - 将 dict 中的键添加到现有 Pandas 数据框中的列标题

标签 python pandas dictionary dataframe

我有一个数据框('DF1')和一个字典('dictdf')。 我想根据字典添加列标题,这些列需要为空。

DF1:

ID  age

12   33
23   55
67   12

结果:

ID  age  height  eye_color  ....  

12   33    NA      NA       ....
23   55    NA      NA       ....
67   12    NA      NA       ....

这是我尝试过的:

colNames = DF1.columns
for key in dictdf.keys():
    colNames.append(key)

newDF = pd.DataFrame(DF1,columns=colNames)

错误:

TypeError: all inputs must be Index

有什么简单的解决方案吗?我不想开始从 dict 转换为 DF 或反过来。

最佳答案

您可以使用pd.DataFrame.join带有已定义列的空数据框。作为单个操作,这比在循环中手动附加列更有效。

d = {'height': 120, 'eye_color': 'brown'}

df = df.join(pd.DataFrame(columns=d))

print(df)

   ID  age height eye_color
0  12   33    NaN       NaN
1  23   55    NaN       NaN
2  67   12    NaN       NaN

关于python - 将 dict 中的键添加到现有 Pandas 数据框中的列标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51589556/

相关文章:

dictionary - 如何安全地允许当前访问go中的嵌套 map ?

在 Eclipse 中构建 Python GUI?

python - 根据列对某些行赋予权重

ios - 启动 IOS map GPS 导航并返回应用程序后应用程序崩溃

c# - 具有多个键和每个键的多个值的字典

python pandas 抛出解析错误

Python 元类与对象实例化一起使用

python - 散点图 Matplotlib 2D > 3D

python - Pandas:对于几列中的每个行值,将其转换为新行

python - 计算CSV文件中每n行的平均值