>我有两个数据。
df1 与列: id,x1,x2,x3,x4,....xn
带列的 DF2:id,y。
df3 =pd.concat([df1,df2],axis=1)
当我使用熊猫康卡特将它们组合在一起时,它变成了
id,y,id,x1,x2,x3...xn
.
这里有两个ID。我怎样才能摆脱一个。
我试过:
df3=pd.concat([df1,df2],axis=1).drop_duplicates().reset_index(drop=True)
.
但不是工作。
数据帧在索引上连接。在连接之前,请确保id
是索引:
df3 = pd.concat([df1.set_index('id'),
df2.set_index('id')], axis=1).reset_index()
或者,更好的是,使用join
:
df3 = df1.join(df2, on='id')
drop_duplicates()
只删除完全相同的行。
您正在寻找的是pd.merge()
.
pd.merge(df1, df2, on='id)