我试图与pandas执行合并。这两个文件有一个公共密钥(" KEY_PLA"),我试图用左连接。但遗憾的是,从第二个文件传输到第一个文件的所有列都具有NaN值。
这是我到目前为止所做的:
df_1 = pd.read_excel(path1, skiprows=1)
df_2 = pd.read_excel(path2, skiprows=1)
df_1.columns = ["Index", "KEY", "KEY_PLA", "INFO1", "INFO2"]
df_2.columns = ["Index", "KEY_PLA", "INFO4"]
df_1.drop(["Index"], axis=1, inplace=True)
df_2.drop(["Index"], axis=1, inplace=True)
# Merge all dataframes
df_merge = pd.DataFrame()
df_merge = df_1.merge(df_2, left_on="KEY_PLA", right_on="KEY_PLA", how="left")
print(df_merge)
以下是excel文件:
代码有什么问题?我还检查了类型,甚至转换了字符串中的列。但没有任何作用。
答案 0 :(得分:2)
我认为问题与已加入的列type
的{{1}}不同,显然一个是整数,另一个是KEY_PLA
。
解决方案是同样的,例如,到string
s:
int