Python 合并两个具有原点的数据帧
假设我有以下两个数据帧df_1和df_2,并希望将它们与一个附加列合并,该列说明行是否存在于df_1、df_2或两者中。在使用“合并”时,是否有任何方法可以直接执行此操作 df_1 df_2 我想要的数据框是:Python 合并两个具有原点的数据帧,python,pandas,merge,merging-data,Python,Pandas,Merge,Merging Data,假设我有以下两个数据帧df_1和df_2,并希望将它们与一个附加列合并,该列说明行是否存在于df_1、df_2或两者中。在使用“合并”时,是否有任何方法可以直接执行此操作 df_1 df_2 我想要的数据框是: 使用参数指示器,并通过dict为预期输出添加: df = pd.merge(df1, df2, how='outer', indicator='origin') print (df) Index x y origin 0 20 5 8 left
使用参数
指示器
,并通过dict
为预期输出添加:
df = pd.merge(df1, df2, how='outer', indicator='origin')
print (df)
Index x y origin
0 20 5 8 left_only
1 35 4 7 left_only
2 55 3 2 both
3 60 12 1 both
4 22 4 3 right_only
5 30 12 6 right_only
d = {'left_only':'1', 'right_only':'2', 'both':'1 & 2'}
df['origin'] = df['origin'].map(d)
print (df)
Index x y origin
0 20 5 8 1
1 35 4 7 1
2 55 3 2 1 & 2
3 60 12 1 1 & 2
4 22 4 3 2
5 30 12 6 2
如果我的答案有用,别忘了-点击复选标记(
✓答案旁边的代码>),将其从灰显切换为填充。谢谢