Метод pandas .DataFrame.merge - это то, что вы хотите использовать здесь.
Используя ваш пример DataFrames:
import pandas as pd
df1 = pd.DataFrame(dict(
date = [
'2020-03-30','2020-03-30','2020-03-30',
'2020-03-30','2020-03-30',],
province = [
'Daegu', 'Gyeongsangbuk-do', 'Gyeonggi-do',
'Seoul', 'Chungcheongnam-do'],
confirmed = [6624, 1298, 463, 426, 127],
released = [3837, 772, 160, 92, 83],
deceased = [111, 38, 5, 0, 0],
))
df2 = pd.DataFrame(dict(
code = [12000, 60000, 20000, 10000, 41000],
province = [
'Daegu', 'Gyeongsangbuk-do', 'Gyeonggi-do',
'Seoul', 'Chungcheongnam-do'],
latitude = [
35.872150, 36.576032, 37.275119,
37.566953, 36.658976],
longitude = [
128.601783, 128.505599, 127.009466,
126.977977, 126.673318],
))
df3 = df1.merge(
df2[['province', 'latitude','longitude']],
on = 'province',
)
pd.set_option('display.max_columns', 7)
print(df3)
Вывод:
date province confirmed released deceased latitude \
0 2020-03-30 Daegu 6624 3837 111 35.872150
1 2020-03-30 Gyeongsangbuk-do 1298 772 38 36.576032
2 2020-03-30 Gyeonggi-do 463 160 5 37.275119
3 2020-03-30 Seoul 426 92 0 37.566953
4 2020-03-30 Chungcheongnam-do 127 83 0 36.658976
longitude
0 128.601783
1 128.505599
2 127.009466
3 126.977977
4 126.673318
Пример кода в python tutor