Мне нужно, чтобы hstacking multple массивы с одинаковым количеством строк (хотя количество строк является переменной между использованиями), но разное количество столбцов. Однако некоторые из массивов имеют только один столбец, например.Numpy: получить массив 1D как 2D-массив без изменения
array = np.array([1,2,3,4,5])
который дает
#array.shape = (5,)
, но я хотел бы иметь форму признанную в качестве 2-го массива, например.
#array.shape = (5,1)
Чтобы hstack мог их комбинировать. Мое текущее решение:
array = np.atleast_2d([1,2,3,4,5]).T
#array.shape = (5,1)
Так мне было интересно, есть ли лучший способ сделать это? Будет ли
array = np.array([1,2,3,4,5]).reshape(len([1,2,3,4,5]), 1)
быть лучше? Обратите внимание, что мое использование [1,2,3,4,5] - это только список игрушек, чтобы сделать пример конкретным. На практике это будет гораздо больший список, переданный в функцию в качестве аргумента. Благодаря!
Интересно, я не знал об этих двух способах. Я попробую те, у кого есть некоторые тесты времени, чтобы увидеть, что лучше всего работает, но оба кажутся менее изобретенными, чем мой метод. Благодаря! – Taaam
Я добавил ссылку на недавний связанный вопрос SO. – hpaulj
В последней версии добавлен более общий «стек». – hpaulj