PandasMerge-如何也合并不同的索引列

我正在尝试在名称不同但值相同的列上合并两个不同的 DataFrame。例如,

df1

   name subject result
0   Kim       c   pass
1   Lee  python   pass
2  Choi       c   fail

df2

    name language  score
0    Kim        c     95
1  Hwang     java     85
2    Lee   python     97
3   Park   python     80

如果我跑pd.merge(df1, df2, left_on='subject', right_on='language')那么我得到

#2 Merge stu1, stu2 by key value
  name_x subject result name_y language  score
0    Kim       c   pass    Kim        c     95
1   Choi       c   fail    Kim        c     95
2    Lee  python   pass    Lee   python     97
3    Lee  python   pass   Park   python     80

但是在“主题”和“语言”列中,我希望它们之间只有一列。他们是多余的。

谢谢!

回答

您可以尝试重命名列:

out=pd.merge(df1, df2.rename(columns={'language':'subject'}),on='subject')

或者

合并后删除列:

out=pd.merge(df1, df2, left_on='subject', right_on='language').drop(columns='language')


以上是PandasMerge-如何也合并不同的索引列的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>