我有两个不同大小的数据帧(df1和df2(。
df1
NUTS lvl2 Code
Greece GR
Italy IT
Germany DE
和df2
Ports Code Year
Patras GR 2010
Lefkada GR 2010
Bergamo IT 2010
Palermo IT 2011
我试图弄清楚如何使用df2如下:
Ports Code Year NUTS lvl2
Patras GR 2010 Greece
Lefkada GR 2010 Greece
Bergamo IT 2010 Italy
Palermo IT 2011 Italy
你能帮我弄清楚吗?我正在尝试使用";其中";和条件,但到目前为止我没有运气。内部连接同上。
df3 = df2.merge(df1, on='Code', how='left')
这与SQL中的左联接相同。您需要一个数据帧(在本例中为df2(的所有行,并且希望将Code列与其对应的列相匹配,该列与df1中的Code相关联。On是两个数据帧之间的公共列(必须是相同的列名(,之所以保留how,是因为您想要一个数据帧的所有行。无论您想保留其所有列的数据帧在语法中都是第一位的,例如df2.merge((。在这种情况下,内部联接会得到相同的结果,因为df2中的列Code有GR和IT,这两个都在df1中。内部联接采用了Layman术语中两列的共同点。