I have a dataframe df1 with latitude and longitude.
df1 = pd.DataFrame({
'place': ["London", "Paris", "Berlin", "London", "Berlin"],
'sale': [12, 6, 4, 3, 14],
'lat': [54, 23, 13, 54, 13],
'lon': [13, 32, 64, 13, 64],
})
df1
place sale lat lon
0 London 12 54 13
1 Paris 6 23 32
2 Berlin 4 13 64
3 London 3 54 13
4 Berlin 14 13 64
After aggregating sale
I get a second dataframe:
df2 = pd.DataFrame({
'place': ["London", "Paris", "Berlin"],
'sale_sum': [15, 6, 18],
})
df2
place sale_sum
0 London 15
1 Paris 6
2 Berlin 18
Now I want to append the lat and lon to the second dataframe. Result would be like this:
place sale_sum lat lon
0 London 15 54 13
1 Paris 6 23 32
2 Berlin 18 13 64
try this:
a = df2.merge(df1[['place','lat', 'lon']], on='place')
a.loc[~a.duplicated()]
>place sale_sum lat lon
0 London 15 54 13
2 Paris 6 23 32
3 Berlin 18 13 64