Объедините несколько массивов numpy в одну из разных форм - PullRequest
0 голосов
/ 08 мая 2020

Итак, у меня есть четыре разных numpy массива разных форм:

(2580, 100)
(2580, 237)
(2580, 8)
(2580, 37)

Как я могу объединить все массивы вместе в один numpy массив?

Дает мне следующая ошибка:

ValueError: could not broadcast input array from shape (2580,237) into shape (2580)

Ответы [ 3 ]

0 голосов
/ 08 мая 2020

вы можете использовать np.c_ для объединения по оси

import numpy as np
f = np.zeros(shape=(5,4))
s = np.zeros(shape=(5,6))
t = np.zeros(shape=(5,16))
res=np.c_[f,s,t]
res.shape
(5,26)
0 голосов
/ 08 мая 2020

Просто нас np.concatenate

import numpy as np
a = np.random.rand(2580, 100)
b = np.random.rand(2580, 237)
c = np.random.rand(2580, 8)
d = np.random.rand(2580, 37)

e = np.concatenate((a, b, c, d), axis = 1)
print(e.shape) 
# (2580, 382)
0 голосов
/ 08 мая 2020
>>> import numpy as np
>>> a = np.zeros((2580, 100))
>>> b = np.zeros((2580, 237))
>>> c = np.zeros((2580, 8))
>>> d = np.zeros((2580, 37))
>>> e = np.concatenate((a, b, c, d), axis=1)
>>> e.shape
(2580, 382)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...