如何解决如何通过列名称python合并两个数据帧
我有两个数据框,一个看起来像这样(形状:12553 * 83):
A12D A131 A12B ...
0 1.096131 2.609943 -0.659828
1 1.111370 2.650422 -0.648742
...
另一个看起来像这样(形状:1 * 105)
A12B A0CM A18V...
PAM50 mRNA Basal-like Basal-like Basal-like
我想通过同一列名对两个表进行内部合并。像这样:
A12D A131 A12B ...
PAM50 mRNA Basal-like Basal-like Basal-like
1 1.096131 2.609943 -0.659828
2 1.111370 2.650422 -0.648742
由于两个表都很大,所以列名没有完整显示。另一个问题是列名称可能重复。我搜索了serval合并方法,其中大多数只是按列值合并。那么在这种情况下我该怎么办?预先感谢!
解决方法
如@sushanth所述,将pd.concat()
与join='inner'
一起使用。这是一个示例:
import pandas as pd
df1 = pd.DataFrame({'a': [1,2,3],'b': [4,5,6],'c': [7,8,9]})
df2 = pd.DataFrame({'b': [11,12,13],'c': [14,15,16],'d': [17,18,19]})
t = pd.concat([df1,df2],axis=0,join='inner')
print(t)
b c
0 4 7
1 5 8
2 6 9
0 11 14
1 12 15
2 13 16
更多信息在这里:
,好了,问题解决了!感谢大家的帮助!我先删除重复的列,然后将两个表缩为一体。喜欢
df1 = df1.loc[:,~df1.columns.duplicated()]
merged = pd.concat([df1,join='inner')
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。