我有2个索引数据帧(列0上的索引):
0 1 2 3
JoeK Joe Kavanagh joe.kavanagh@nomail.com
BarryD Barry Dempsy bdempsy@nomail.com
OrlaF Orla Farrel ofjk@nomail.com
SethB Seth Black sblack@nomail.com
KateW Kate White kw12@nomail.com
第二个是:
0 1 2 3
JoeK Joe Kavanagh jkavanagh@nomail.com
BarryD Barry Dempsy barry.dempsy@nomail.com
JimmyS Jimmy Smith j.Smith@nomail.com
AndyB Andy Brown ABrwn@nomail.com
MaryP Mary Power MaryPower@nomail.com
我想执行如下SQL中的内部联接:
SELECT df2.* FROM df2
INNER JOIN df1
ON df2.0 = df1.0
我只从第二个数据帧得到结果,而不是两个都得到:
0 1 2 3
JoeK Joe Kavanagh jkavanagh@nomail.com
BarryD Barry Dempsy barry.dempsy@nomail.com
我尝试了熊猫合并,但它给了我两个数据帧的结果! 非常感谢您的帮助。你知道吗
你需要指定你想要一个内部的merge(默认是做一个外部的)。您还需要首先将
df1
限制为合并列:如果不执行限制(
df1[['0']]
),它将为重叠的列添加后缀:后缀可以用
suffixes
kwarg配置。你知道吗See also the pandas docs for a "brief primer on merge methods"。
与合并不同,您只想通过使用^{} 测试值对另一个df的成员身份来过滤第二个df:
相关问题 更多 >
编程相关推荐