首页 > 解决方案 > 如何加入两个数据框,其中一列具有相同的值(和名称)且大小相同?

问题描述

我只想加入两个数据框,其中一列具有相同的值。

我尝试了熊猫合并功能:

df1。--> 数据帧 1 数据帧 1

    AU01    subject 
1   0.45      3
2   0.21      3
3   1.45      3
4   0.78      3  

df2。--> 数据框 2 数据框 2

      AU02     subject 
1     0.44       3
2     0.34       3
3     1.56       3
4     0.78       3  

我尝试了什么:

data = pd.merge(df1, df2, how="inner" , on="subject")

并得到这样的结果:

合并结果:

但我只想通过合并公共列并保持其他列不变来合并两个数据框。

我的预期输出是:

    AU01   AU02   subject 
1   0.45   0.44     3
2   0.21   0.34     3
3   1.45   1.56     3
4   0.78   0.78     3   

PS:这里还有其他问题,但没有问题可以帮助我。

标签: pythonpandasdataframe

解决方案


假设“主题”信息是多余的,您可以尝试:

df1.combine_first(df2)

   AU01  AU02  subject
1  0.45  0.44        3
2  0.21  0.34        3
3  1.45  1.56        3
4  0.78  0.78        3

推荐阅读