我正在努力用最简单的方法在pandas中进行不区分大小写的合并.有没有办法在合并时做到这一点?我是否需要使用(?i)或带有ignorecase的正则表达式?在我的下面的代码片段中,我加入了一些国家,其中一个文件中可能是"美国"而另一个文件中的"美国",我只想将这个案例排除在外.谢谢!
import pandas as pd
import csv
import sys
env_path = sys.argv[1]
map_path = sys.argv[2]
df_address = pd.read_csv(env_path + "\\address.csv")
df_CountryMapping = pd.read_csv(map_path + "\CountryMapping.csv")
df_merged = df_address.merge(df_CountryMapping, left_on="Country", right_on="NAME", how="left")
....
Run Code Online (Sandbox Code Playgroud)
Sha*_*wal 11
小写将用于合并的两列中的值,然后在小写列上合并
df_address['country_lower'] = df_address['Country'].str.lower()
df_CountryMapping['name_lower'] = df_CountryMapping['NAME'].str.lower()
df_merged = df_address.merge(df_CountryMapping, left_on="country_lower", right_on="name_lower", how="left")
Run Code Online (Sandbox Code Playgroud)
小智 10
df_merged = pd.merge(df_address, df_CountryMapping, left_on=df_address["Country"].str.lower(), right_on=df_CountryMapping["NAME"].str.lower(), how="left")
Run Code Online (Sandbox Code Playgroud)