Что делать
matrix[array - 1, :]
Где array - 1
обозначает тот факт, что индексирование основано на 0 в Python .
Пример, имитирующий ваши входные данные.
>>> matrix = np.random.rand(5, 4)
>>> matrix
array([[0.15894248, 0.21096647, 0.5282654 , 0.69521 ],
[0.86969885, 0.36367184, 0.3805844 , 0.3208523 ],
[0.86888592, 0.40990308, 0.73697685, 0.5205354 ],
[0.56091075, 0.92830105, 0.63612971, 0.54486469],
[0.33106509, 0.12822892, 0.30061825, 0.03357865]])
>>> array = np.random.randint(1, 5, 3)
>>> array
array([1, 1, 4])
Наконец
>>> matrix[array - 1, :]
array([[0.15894248, 0.21096647, 0.5282654 , 0.69521 ],
[0.15894248, 0.21096647, 0.5282654 , 0.69521 ],
[0.56091075, 0.92830105, 0.63612971, 0.54486469]])