我是python的新手。我试图将几个矩阵组合成一个新的矩阵。例如: -
A = np.matrix([1, 2, 3], [5, 6, 7], [9, 10, 11])
B = np.matrix([4], [8], [12])
C = np.matrix([13, 14])
D = np.matrix([15, 16])
目前我正在使用: -
E = np.vstack((np.hstack(([A, B])), np.hstack((C, D))))
在matlab中有一个更简洁的方法,我只是简单地使用: - E =(A,B; C,D);
非常感谢
答案 0 :(得分:1)
我相信你的矩阵缺少外括号。如果你定义
A = np.matrix([[1, 2, 3], [5, 6, 7], [9, 10, 11]])
B = np.matrix([[4], [8], [12]])
C = np.matrix([[13, 14]])
D = np.matrix([[15, 16]])
然后
E = np.bmat('A,B;C,D')
产量
matrix([[ 1, 2, 3, 4],
[ 5, 6, 7, 8],
[ 9, 10, 11, 12],
[13, 14, 15, 16]])
np.bmat([[A,B],[C,D]])
也有效。有关numpy.bmat
的更多信息,请参阅the docs。