Получите соответствующие данные для каждой строки в пандасфрейме из другого фрейма данных - PullRequest
0 голосов
/ 09 октября 2018

Допустим, у меня есть два кадра данных в пандах.Один df1 содержит аэропорты с другой информацией, а у меня есть другой фрейм данных df2, в котором указано местоположение этих аэропортов (широта, долгота).Я хотел бы назначить каждой строке в df1 соответствующие данные из df2, как я могу сделать это более элегантно и быстрее, чем зацикливание на всех возможностях?Два примера изображения показаны ниже:

Пример 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

1 Ответ

0 голосов
/ 09 октября 2018

Допустим, у вас есть следующие два кадра данных:

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)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...