2013-12-17 94 views
0
Mat_1 is 2x2 matrix = 
[[1,2], 
[3,4]] 

Mat_2 is 2x2 matrix = 
[[a,b], 
[c,d]] 

Mat_3 is 2x2 matrix = 
[[5,6], 
[7,8]]  

Mat_4 is 2x2 matrix = 
[[e,f], 
[g,h]] 

如何將4矩陣組合成如下一個新的矩陣,
的Python:如何結合4小矩陣成爲一個大型矩陣

Mat is 4x4 matrix = 
[ [1,2,a,b], 
    [3,4,c,d], 
    [5,6,e,f], 
    [7,8,g,h]] 

可以通過numpy.reshape解決或調整?

回答

1

這工作...

In [10]: np.vstack([np.hstack([Mat_1, Mat_2]), np.hstack([Mat_3, Mat_4])]) 
Out[10]: 
array([['1', '2', 'a', 'b'], 
     ['3', '4', 'c', 'd'], 
     ['5', '6', 'e', 'f'], 
     ['7', '8', 'g', 'h']], 
     dtype='|S1') 

編輯:

它看起來像numpy.bmat功能只是爲了這個目的寫的:

In [11]: np.bmat([[Mat_1, Mat_2], [Mat_3, Mat_4]]) 
Out[11]: 
matrix([['1', '2', 'a', 'b'], 
     ['3', '4', 'c', 'd'], 
     ['5', '6', 'e', 'f'], 
     ['7', '8', 'g', 'h']], 
     dtype='|S1')