我有两个类似格式的数据框:
df1 = DataFrame({'a':[0,1,2,3,4], 'b':['q','r','s','t','u']})
df1
a b
0 0 q
1 1 r
2 2 s
3 3 t
4 4 u
df2 = DataFrame({'a':[4,3,2,1,999], 'b':['u','r','s','t','u']})
df2
a b
0 4 u
1 3 r
2 2 s
3 1 t
4 999 u
我想获得一个新的数据框,其中包含出现在这两个行中的行(忽略索引)。所以上面的例子给出了一个数据帧
a b
0 4 u
1 2 s
我如何得到这个交集?
答案 0 :(得分:13)
您只需执行merge
,这将使用所有列,默认的合并类型为inner
,因此dfs中必须存在值:
In [71]:
df1.merge(df2)
Out[71]:
a b
0 2 s
1 4 u