我尝试沿列连接两个矩阵(如 matlab 中的 [a,b] )。但我不断收到错误:
ValueError: arrays must have same number of dimensions
这是我的代码:
print a.shape
print b.shape
X= np.hstack([b,a])
这是输出:
(223129, 1)
(223129, 4)
据我了解,尺寸很好。这里出了什么问题?
好的,我发现了我的错误。我的一个矩阵是一个稀疏矩阵,然后你就会得到我遇到的错误。
a
并且b
有不同数量的维度。做a.ndim
或b.ndim
。结果应该是相等的。
如果a
并且b
具有您似乎指示的尺寸,那么它应该可以工作。
例如
a=np.ones((5,1))
b=np.ones((5,4))
np.hstack([b,a])
array([[ 1., 1., 1., 1., 1.],
[ 1., 1., 1., 1., 1.],
[ 1., 1., 1., 1., 1.],
[ 1., 1., 1., 1., 1.],
[ 1., 1., 1., 1., 1.]])
如果我使用与a
您b
指示的相同形状 {(223129,1) 和 (223129,4)} ,它对我有用。