如果列匹配,则合并数据帧

时间:2019-04-30 17:41:58

标签: python pandas

我需要在df2中输入与lat和lng匹配的df1中的机场名称

我尝试使用join和groupby,但是它可以工作

df1:

 name     code     lat     lng
 temp0      a1      3.2    121.9
 temp1      a2      4.9    151.6
 temp2      b1      6.7    125.3

df2:

 city       lat      lng     admin  nearest_airport_lat  nearest_airport_lng
 city 1     4.7     132.6    admin1     4.9                  151.6
 city 2     5.1     142.9    admin1     6.7                  125.3
 city 3     2.2     110.4    admin1     3.2                  121.9

预期输出:

  city      lat      lng    admin   nearest_airport_lat nearest_airport_lng   airport
 city 1     4.7     132.6   admin1          4.9                  151.6        temp1

1 个答案:

答案 0 :(得分:2)

使用合并

pd.merge(df1, df2, on=['lat', 'lng'], how= "inner")