import pandas as pd
df1 = pd.DataFrame([["2014", "q2"]],
columns=('Year', 'Quarter'))
df2 = pd.DataFrame([["2016", "q1"],
["2015", "q1"]],
columns=('Year', 'Quarter'))
print(df1.merge(df2, on='Year', how='outer'))
结果:
Year Quarter_x Quarter_y
0 2016 NaN q1
1 2015 NaN q1
2 2014 q2 NaN
我想得到的是:
Year Quarter
0 2016 q1
1 2015 q1
2 2014 q2
使用merge()或其他函数有一种简单的方法吗?
答案 0 :(得分:1)
您可以使用:
df1.merge(df2, on=['Year', 'Quarter'], how='outer').dropna()
得到:
Year Quarter
0 2014 q2
1 2016 q1
2 2015 q1
您还可以查看pd.concat()。