В python у меня есть массив 2x1
a=array([[ 0, 4, 8, 12, 16],
[ 0, 8, 16, 24, 32]])
Когда я извлекаю вектор-столбец
c=a[:,1]
C становится массивом 1x2, и я хочу, чтобы он был массивом 2x1. Применение транспонирования не похоже на трюк.
Любые предложения?
Спасибо
После
c=a[:,1]
c
теперь:
array([4, 8])
то есть. 1D массив (так даже не 1x2).
Если вам нужен массив 2x1, попробуйте следующее:
c = a[:,1:2]
он станет следующим:
array([[4],
[8]])
Другие варианты:
import numpy as np
c = a[:,1]
а затем получить доступ к данным с требуемой формой, используя:
c[:,np.newaxis]
или
c[:,None]
Вы пробовали c.reshape(2,1)
?