2016-11-22 185 views
1

我有两个大的方形矩阵(在两个CSV文件中)。这两个矩阵可能有几个不同的标签和不同的尺寸。 我想添加这两个矩阵并保留所有标签。我如何在Python中做到这一点?添加不同标签和不同尺寸的矩阵

示例:

{a,b,c ... e}是标签。

 a b c d    a e 
    a 1.2 1.3 1.4 1.5   a 9.1 9.2 
X= b 2.1 2.2 2.3 2.4  Y= e 8.1 8.2 
    c 3.3 3.4 3.5 3.6     
    d 4.2 4.3 4.4 4.5     

      a  b  c  d  e 
     a 1.2+9.1 1.3  1.4  1.5  9.2 
X+Y= b 2.1  2.2  2.3  2.4  0 
     c 3.3  3.4  3.5  3.6  0 
     d 4.2  4.3  4.4  4.5  0 
     e 8.1  0  0  0  8.2 

如果有人想看到这些文件(矩阵),他们是here

**试图通过@piRSquared

import pandas as pd 
X= pd.read_csv('30203_Transpose.csv') 
Y= pd.read_csv('62599_1999psCSV.csv') 

Z= X.add(Y, fill_value=0).fillna(0) 

print Z 

Ž建议的方法 - > 467行×661列

所得矩阵应该是正方形太。 这种做法也导致丢失的行头(现在变成1,2,3 ......,他们应该是10010,10071,10107,1013。)

10010 10071 10107 1013 .... 
0 0 0 0.01705 0.0439666659 
1 0 0 0 0 
2 0 0 0 0.0382000022 
3 0.0663666651 0 0 0.0491333343 
4 0 0 0 0 
5 0.0208000001 0 0 0.1275333315 
. 
. 

我应该怎么做?

回答

1

使用add方法与参数fill_value=0

X.add(Y, fill_value=0).fillna(0) 

enter image description here

+0

我尝试这样做。行标签在过程中发生变化,生成的矩阵是矩形的(应该是方形的) 有没有办法解决? – FlyingAura