合并两个 Pandas DataFrame 的要求

requirements for merging two Pandas DataFrame

我不知道为什么我不能根据 Alpha-3 代码和 iso_code 合并两个 Dataframes,尽管 '"' 在合并之前被删除了:

import pandas as pd

vac = pd.read_csv('https://raw.githubusercontent.com/owid/covid-19-data/master/public/data/vaccinations/vaccinations.csv')
world = pd.read_csv('https://gist.githubusercontent.com/tadast/8827699/raw/f5cac3d42d16b78348610fc4ec301e9234f82821/countries_codes_and_coordinates.csv').

我合并的结果只是列名。

谁能解释一下?

查看数据内部,您会注意到 world df 将在 Alpha-3 代码中包含引号:

          Country Alpha-2 code Alpha-3 code Numeric code Latitude (average)  \
0     Afghanistan         "AF"        "AFG"          "4"               "33"   
1         Albania         "AL"        "ALB"          "8"               "41"   
2         Algeria         "DZ"        "DZA"         "12"               "28"   
3  American Samoa         "AS"        "ASM"         "16"         "-14.3333"   
4         Andorra         "AD"        "AND"         "20"             "42.5"   

  Longitude (average)  
0                "65"  
1                "20"  
2                 "3"  
3              "-170"  
4               "1.6"  

所以你会想要摆脱它:

# note the space is intentional, to get rid of blank spaces
world['Alpha-3 code'] = world['Alpha-3 code'].str.strip(' "')