Транспонирование массива NumPy - PullRequest
152 голосов
/ 10 мая 2011

Я использую Python и NumPy и у меня есть некоторые проблемы с "transpose":

import numpy as np
a = np.array([5,4])
print(a)
print(a.T)

Invoking a.T не транспонирует массив. Если a, например, [[],[]], то оно корректно транспонируется, но мне нужна транспонирование [...,...,...].

Ответы [ 13 ]

0 голосов
/ 01 сентября 2018

вместо этого используйте arr [:, None] для создания вектора столбца

0 голосов
/ 20 марта 2017

Имя функции в numpy равно column_stack .

>>>a=np.array([5,4])
>>>np.column_stack(a)
array([[5, 4]])
0 голосов
/ 21 марта 2016

Как уже упоминалось в некоторых комментариях, транспонирование 1D-массивов - это 1D-массивы, поэтому одним из способов транспонирования 1D-массива будет преобразование массива в матрицу следующим образом:

np.transpose(a.reshape(len(a), 1))
...