两个DataFrame(df1
,df2
),df1
具有列ID
和df2
具有列ID, flag1, flag2
。
我想合并两个DataFrame,其中df1
中的所有ID应与flag1
,flag2
值一起使用。
我有以下代码行。
df3=pd.merge(df1, df2, on=id, how='left')
df3
的输出仅显示ID的列值,而flag1
和flag2
没有任何值。
df3
中的预期结果应为ID, flag1, flag2
,其值应为flag1
中的flag2
和df2
。
答案 0 :(得分:1)
然后,简单地:
import pandas as pd
df1 = pd.DataFrame({'id': [1,2,3,4,5,6]})
df2 = pd.DataFrame({'id': [2,4,6],
'flag1' : ['a','b','c'],
'flag2' : ['aa','bb','cc']})
pd.merge(df1, df2, how='left')
输出
id flag1 flag2
0 1 NaN NaN
1 2 a aa
2 3 NaN NaN
3 4 b bb
4 5 NaN NaN
5 6 c cc