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