Множественное многомерное индексирование - PullRequest
0 голосов
/ 06 февраля 2019

Я хочу, чтобы значения в массиве с множеством измерений (пример 2D ниже) передавались в массиве признаков.

Похоже, что я могу передать только до 2 индексов без ошибки:

V2 = [[1,2],[2,1]]
V3 = [[1,2],[2,1],[0,0]]
lookup = np.random.rand(3,3)
lookup[V2] #OK
lookup[V3] #IndexError: too many indices for array

1 Ответ

0 голосов
/ 06 февраля 2019

Количество используемых вами индексов - это число измерений.

Я думаю, вы исходите из того, что каждый подэлемент списка равен 1 точке, а на самом деле синтаксис:

V2 = [[a1,a2,a3],[b1,b2,b3]]
lookup[V2]

эквивалентно доступу:

[V2[a1,b1],
V2[a2,b2],
V2[a3,b3]]

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

...