Предположим, у меня есть матрица A
порядка m
× n
и вектор порядка m
× 1
. Я хотел бы извлечь элементы из каждой строки матрицы A
, используя элементы вектора в качестве смещения в каждой строке.
Например,
A = [[3, 0, 0, 8, 3],
[9, 3, 2, 2, 6],
[5, 5, 4, 2, 8],
[3, 8, 7, 1, 2],
[3, 9, 1, 5, 5]]
и вектор
y = [4, 2, 1, 3, 2]
Я хочу добиться такого способа извлечения элементов A
, чтобы каждый элемент вектора индексировал элемент в соответствующей строке A
, т. Е. Реализуя
for i in range(len(y)):
A[i, y[i]] = #perform operations here
без использования каких-либо явных циклов.
Ожидаемый результат:
[3, 2, 5, 1, 1]
Я использую Python и библиотеку NumPy.