Numey фантазии индексации с кортежами - PullRequest
0 голосов
/ 24 сентября 2018

В уроке numpy от Scipy , пока я преподавал необычную индексацию массивов numpy, я получил следующую схему объяснения:

enter image description here

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

a = np.array([[j+i for i in range(0,6)] for j in range(0, 60, 10)])

Если я запускаю a[(0,1,2,3,4),(1,2,3,4,5)], я получаю array([ 1, 12, 23, 34, 45]), в соответствии сизображение.Но я не могу понять, как кортежи распаковываются в [0,1] и так далее.

Я пытаюсь понять механизм этого.Подробный ответ будет высоко ценится.

1 Ответ

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

Все, что нужно для индексирования, - это список координат в большем массиве.Так что думайте об этой картине как о большой сетке, а ваши два кортежа как о координатах х и координатах у (она также обобщается на более высокие измерения).Таким образом, если вы объедините их вместе, вы получите:

(x=0, y=1), (x=1, y=2), (x=2, y=3), (x=3, y=4), (x=4, y=5)

, что, если вы прочитаете изображение, которое вы увидите, даст вам:

(1, 12, 23, 34, 45)

как и ожидалось

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...