python - Pandas 将一个数据框叠加在另一个数据框上

标签 python pandas dataframe join merge

我有两个数据框,它们具有相同的列和完全相同的行数

数据框 1 包含原始数据,数据框 2 包含已更改的字段(更改的字段包含新值,未更改的字段为 nan)。

我想基本上将 df 2 中的“新数据”覆盖在 df 1 中的数据上,并得到下面的结果。

df1:

Key   a    b

123   6    1
124   7    6
125   3    5

df2:

Key   a    b

123   nan  nan
124   8    nan
125   nan  4

Result df:

Key   a    b

123   6    1
124   8    6
125   3    4

最佳答案

你需要combine_first :

df2.combine_first(df1)

输出:

Key    a    b       
123  6.0  1.0
124  8.0  6.0
125  3.0  4.0

关于python - Pandas 将一个数据框叠加在另一个数据框上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49202420/

相关文章:

r - 按名称删除数据框列

Python Pandas DataFrame to_csv 奇怪的格式

python - 读取 csv 文件中重复的列名

python - 为什么我不能在 pandas 中将列分成两列?

python - pandas 数据框中行中的唯一文本

python - 绘制表格并显示 Pandas Dataframe

python - 如何动态更新 Pandas DataFrame 中的值

python - Pandas 用新集替换选择性数据

python - 如何在django中测试url

python - 如何在 Python 中转换、排序并保存为 CSV MS Access 数据库 .mdb 文件