将多维Numpy数组与一维numpy数组连接起来。

问题描述 投票:-1回答:1

我有两个numpy数组(来自EMNIST数据集的字母)。

import scipy .io
emnist = scipy.io.loadmat(DATA_DIR + '/emnist-letters.mat')
data = emnist ['dataset']
X_train = data ['train'][0, 0]['images'][0, 0]
y_train = data ['train'][0, 0]['labels'][0, 0]

其维度如下:

X_train.shape = (124800, 784)

y_train.shape = (124800, 1)

现在,我想把两者连起来,这样新的形状就会是。(124800, 785).

根据 这个 链接,我试了一下。

np.concatenate((X_train.shape, y_train.shape), axis = 0)

但是,结果是这样的: array([124800, 784, 124800, 1]).

我怎样才能 "粘贴"?y_train 后面 X_train 这样形状就会是(124800, 785)?

python numpy concatenation
1个回答
1
投票

如果你连接两个数组,你必须连接数组内的数据,而不是形状。此外,你要在第二个("短")轴上进行连接,也就是--"短 "轴。axis=1:

np.concatenate((X_train, y_train), axis=1)
© www.soinside.com 2019 - 2024. All rights reserved.