1 回答
TA贡献1824条经验 获得超5个赞
也许您可以suffixes在合并中使用参数来控制列名称。来自pandas 合并文档:
将 DataFrame df1 和 df2 与附加到任何重叠列的指定左后缀和右后缀合并。
在上面,类似:
combine = pd.merge(file1, file2, on='filename', how='inner', suffixes=('_file1', '_file2'))
其他方面也类似merge。这样你就可以在合并时知道计数来自哪里。
例子:
# Creating Dataframes
df1 = pd.DataFrame({'col1': ['foo', 'bar', 'baz'], 'count': [1, 2, 3]})
df2 = pd.DataFrame({'col1': ['foo', 'bar', 'baz'], 'count': [5, 6, 7]})
df1:
col1 count
0 foo 1
1 bar 2
2 baz 3
df2:
col1 count
0 foo 5
1 bar 6
2 baz 7
合并
pd.merge(df1, df2, on='col1', suffixes=('_df1', '_df2'))
结果:
col1 count_df1 count_df2
0 foo 1 5
1 bar 2 6
2 baz 3 7
更新
鉴于您有四个数据框,也许您可以尝试:
# Combine two of them
combine1 = pd.merge(file1, file2, on='filename', how='inner', suffixes=('_file1', '_file2'))
# Combine other two
combine2 = pd.merge(file3, file4, on='filename', how='inner', suffixes=('_file3', '_file4'))
# Now combine the combined dataframes
combine = pd.merge(combine1, combine2, on='filename', how='inner')
添加回答
举报