Python 对部分索引重叠的行进行数据帧合并/联接
我有以下两个数据帧:Python 对部分索引重叠的行进行数据帧合并/联接,python,pandas,join,merge,Python,Pandas,Join,Merge,我有以下两个数据帧: df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2'], ...: 'B': ['B0', 'B1', 'B2'], ...: 'C': ['C0', 'C1', 'C2'], ...: 'D': ['D0', 'D1', 'D2']}, ...: index=
df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2'],
...: 'B': ['B0', 'B1', 'B2'],
...: 'C': ['C0', 'C1', 'C2'],
...: 'D': ['D0', 'D1', 'D2']},
...: index=[0, 1, 2])
及
如您所见,df1和df2只有索引2作为重叠
我希望以这样的方式组合这两个df,最终结果是:
df3 = pd.DataFrame({'A': ['A0', 'A1', 'A2',np.nan,np.nan],
...: 'B': ['B0', 'B1', 'B2',np.nan,np.nan],
...: 'C': ['C0', 'C1', 'C2',np.nan, np.nan],
...: 'D': ['D0', 'D1', 'D2',np.nan,np.nan],
'E': [np.nan, np.nan, 'E2','E3','E4'],
'F': [np.nan, np.nan, 'F2','F3','F4']},
...: index=[0, 1, 2,3,4])
使用:
使用:
可以使用concat,轴1
pd.concat([df1,df2],axis=1)
A B C D E F
0 A0 B0 C0 D0 NaN NaN
1 A1 B1 C1 D1 NaN NaN
2 A2 B2 C2 D2 E2 F2
3 NaN NaN NaN NaN E3 F3
4 NaN NaN NaN NaN E4 F4
可以使用concat,轴1
pd.concat([df1,df2],axis=1)
A B C D E F
0 A0 B0 C0 D0 NaN NaN
1 A1 B1 C1 D1 NaN NaN
2 A2 B2 C2 D2 E2 F2
3 NaN NaN NaN NaN E3 F3
4 NaN NaN NaN NaN E4 F4
pd.concat([df1,df2],axis=1)
A B C D E F
0 A0 B0 C0 D0 NaN NaN
1 A1 B1 C1 D1 NaN NaN
2 A2 B2 C2 D2 E2 F2
3 NaN NaN NaN NaN E3 F3
4 NaN NaN NaN NaN E4 F4