我对在python中使用Pandas模块合并两个DataFrame有疑问。
每个DataFrame中都有 125行和125列
在DataFrame 1中:
Test1 Test2 Test3 Test4 Test5 Test6 .....
Re1 Pos Neg Neg Neg Pos Pos
Re2 Pos Neg Pos Neg Pos Neg
Re3 Pos Neg Pos Neg Pos Neg
Re4 Pos Neg Pos Neg Neg Neg
Re5 Pos Neg Pos Neg Neg Neg
.
.
.
在DataFrame 2中:
Test1 Test2 Test3 Test4 Test5 Test6 .....
Re1 Yel Blu Yel Blu Blu Org
Re2 Blu Blu Blu Yel Blu Blu
Re3 Org Blu Org Yel Yel Blu
Re4 Org Blu Org Yel Yel Blu
Re5 Org Blu Org Org Yel Blu
.
.
.
我想要的结果是: 组合数据框:
Test1 Test2 Test3 Test4 Test5 Test6 .....
Re1 Pos_Yel Neg_Blu Neg_Yel Neg_Blu Pos_Blu Pos_Org
Re2 Pos_Blu Neg_Blu Pos_Blu Neg_Yel Pos_Blu Neg_Blu
Re3 Pos_Org Neg_Blu Pos_Org Neg_Yel Pos_Yel Neg_Blu
Re4 Pos_Org Neg_Blu Pos_Org Neg_Yel Neg_Yel Neg_Blu
Re5 Pos_Org Neg_Blu Pos_Org Neg_Org Neg_Yel Neg_Blu
.
.
对您来说可能有点容易,但是由于我是python编码的初学者,因此如果有人可以回答我的问题,这将非常有帮助。
非常感谢。
答案 0 :(得分:1)
Pandas运算符通常根据索引和列标签对齐值。因此,只需将两个DataFrame加在一起,就可以将元素的值正确对齐。
如果DataFrame中的值都是字符串,并且常量将广播到DataFrame中的所有值,则还可以向DataFrame添加常量字符串,例如'_'
。
In [32]: dfa + '_' + dfb
Out[32]:
Test1 Test2 Test3 Test4 Test5 Test6
Re1 Pos_Yel Neg_Blu Neg_Yel Neg_Blu Pos_Blu Pos_Org
Re2 Pos_Blu Neg_Blu Pos_Blu Neg_Yel Pos_Blu Neg_Blu
Re3 Pos_Org Neg_Blu Pos_Org Neg_Yel Pos_Yel Neg_Blu
Re4 Pos_Org Neg_Blu Pos_Org Neg_Yel Neg_Yel Neg_Blu
Re5 Pos_Org Neg_Blu Pos_Org Neg_Org Neg_Yel Neg_Blu