我有一个3400,018维的numpy数组,我有一一个3400,1数组,需要附加到末尾的第一个数组。
X_train.shape
=(34189,18(
type(X_train)
=numpy.ndarray
y_train.shape
=(34189,(
我的尝试:
数据=np.append(X_train,y_train(现在它返回一个(649591,(np数组。
请帮忙吗?
此外,如何从numpy.ndarray中取出一列?也就是说,在我把它们放在一起并对数据进行排序之后,我该如何处理(34189,19(维数组,并将其转换为两个数组——(34189,28(和(34189:1(?(与我上面的问题相反(
谢谢
具有ndim == 1
的数组隐含地是行,而不是列。最简单的方法是将其转换为一列并使用np.concatenate
:
np.concatenate((X_train, Y_train[:, None]), axis=1)
你可以用np.append
:做同样的事情
np.append(X_train, Y_train[:, None], axis=1)
将Y_train
转换为列的其他方式包括Y_train.reshape(-1, 1)
和np.atleast_2d(Y_train)
。