我尝试合并两个数据帧是我的代码:
我如何加载数据:
import pandas as pd
df_population = pd.read_csv("C:/Users/Satgiaire
05/Downloads/population_commune.csv",encoding = 'iso-8859-1')
我如何合并数据
df_merged2 = pd.merge(df_population, df_merged, left_on=['CODGEO'],
right_on=['Code_commune_INSEE'],how='inner')
它成功但是CODGEO列的名称已经改变,并知道我有CODGEO_X。我在两个数据框中都有CODGEO,我想只有CODGEO WITHOUT X
答案 0 :(得分:1)
您看到的名称更改由pandas.DataFrame.merge
中的suffixes=
kwarg定义。如果存在未用于合并的同名列,则仅使用此选项。例如:
df1 = pd.DataFrame({'a': [1,2,3], 'b': [4,5,6]})
df2 = pd.DataFrame({'a': [1,2,3], 'c': [4,5,6]})
pd.merge(df1, df2, left_on=['b'], right_on=['c'])
a_x b a_y c
0 1 4 1 4
1 2 5 2 5
2 3 6 3 6
鉴于:
df1 = pd.DataFrame({'a': [1,2,3], 'b': [4,5,6]})
df2 = pd.DataFrame({'a': [1,2,3], 'c': [4,5,6]})
pd.merge(df1.drop('a', axis=1), df2, left_on=['b'], right_on=['c'])
b a c
0 4 1 4
1 5 2 5
2 6 3 6
因此,您需要识别您知道的重复项,这些列是您在合并过程中未使用的重复项,并将其从您的某个DataFrame中删除。