如何合并具有相同列但具有不同行值的两个数据框?

时间:2020-08-29 18:10:42

标签: python python-3.x pandas dataframe

我正在尝试将具有相同列和行数的两个数据框放在一起,但是其中一个在某些行中具有nan,而另一行则没有。

此示例使用2 DF,但我必须使用大约50 DF进行此操作,并将所有数据帧合并为1。

DF1:

html

DF2:

   id   b    c
0  1   15    1
1  2   nan  nan
2  3   2     3
3  4   nan  nan

所需的输出:

   id   b    c
0  1   nan  nan
1  2   26    6
2  3   nan  nan
3  4   60    3

1 个答案:

答案 0 :(得分:0)

如果有

df1 = pd.DataFrame(np.nan, index=[0, 1], columns=[0, 1])
df2 = pd.DataFrame([[0, np.nan]], index=[0, 1], columns=[0, 1])
df3 = pd.DataFrame([[np.nan, 1]], index=[0, 1], columns=[0, 1])

然后您可以更新df1

for df in [df2, df3]:
    df1.update(df)

print(df1)

     0    1
0  0.0  1.0
1  0.0  1.0