Numpy column_stack(46020,369)(46020,)(46020,)(46020,)

时间:2016-04-28 21:01:11

标签: python arrays numpy

我有4个具有以下形状的数组:

{{1}}

我正在尝试将最后3列的列连接到X. 如果我这样做的话:

{{1}}

它给了我一个错误:

  

ValueError:除了之外的所有输入数组维   连接轴必须完全匹配

我做错了什么? 形状为(46020,)的数组是否应该像(46020,1)?

1 个答案:

答案 0 :(得分:2)

你可以在pred1,pred2和pred3上使用numpy's atleast_2d() method来确保数组至少有两个维度,即

import numpy as np

X = np.random.rand(46020,369)
pred1 = np.random.rand(46020)
pred2 = np.random.rand(46020)

print X.shape,pred1.shape,pred2.shape

(46020,369)(46020,)(46020,)

然后,您可以使用np.vstack来连接数组。

# concatenate
X_new = np.vstack(np.atleast_2d(X.T,pred1,pred2)).T
print X_new.shape

(46020,371)