繁体   English   中英

从另一个数据框中为pandas数据框中的每一行获取适当的数据

[英]Get appropriate data for each row in pandas dataframe from another dataframe

可以说我在熊猫中有两个数据框。 一个df1包含具有其他信息的机场,而我还有另一个数据df2 ,其中包含这些机场的位置(纬度,经度)。 我想将df2的适当数据分配给df1中的每一行,与遍历所有可能性相比,我该如何更优雅,更快速地做到这一点? 下面是两个示例图像:

df1的示例

df2的示例

    ORIGIN  DEST    DIVERTED
0   ANC     SEA     0
1   LAX     PBI     0
2   SFO     CLT     1


        IATA    LATITUDE    LONGITUDE
  17    ANC     61.17432    -149.99619
  277   SEA     47.44898    -122.30931
  176   LAX     33.94254    -118.40807
  235   PBI     26.68316    -80.09559
  278   SFO     37.619      -122.37484
  66    CLT     35.21401    -80.94313

假设您有以下两个数据框:

DF1:

  IATA info1 info2 info3
0  ABI   bla   bla   bla
1  ABE   bla   bla   bla

DF2:

  IATA  lat  long
0  ABE   40    90
1  ABI   20   100

您可以使用以下代码合并这两个数据框:

dfNew = pd.merge(df1, df2, on='IATA', how='left')

输出:

  IATA info1 info2 info3  lat  long
0  ABI   bla   bla   bla   20   100
1  ABE   bla   bla   bla   40    90

在您的情况下,将执行以下操作:

dfNew = pd.merge(df1, df2, left_on='ORIGIN', right_on='IATA', how='left').drop('IATA', axis=1)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM