numpy объединить по размеру - PullRequest
0 голосов
/ 20 апреля 2020

Я часто делаю следующее и мне интересно, есть ли "канонический" способ сделать это?

У меня есть ndarray say shape = (100, 4, 6), и я хочу уменьшить в (100, 24) путем объединения 4 векторов длины 6 в один вектор

Я могу использовать для этого изменение формы, но я вручную вычисляю новую форму

, то есть

np.reshape (x, shape = (a.shape [0], a.shape [1] * a.shape [2]))

в идеале я бы просто предоставил нужное мне измерение уменьшить на

np.concatenate (x, dim = -1)

, но np.concatenate работает с перечислимым значением ndarray. Я задавался вопросом, возможно ли предоставить итератор по оси ndarray, но не смотрел дальше. Какой здесь обычный шаблон?

1 Ответ

1 голос
/ 20 апреля 2020

Вы можете избежать вычисления одного измерения, используя -1 как:

x.reshape(a.shape[0], -1)
...