Открытая сетка индексов в NumPy
Собрать сетку индексов для подтаблицы позволяет функция
ix_.
Она превращает
несколько одномерных списков номеров
в наборы индексов, которые можно
совместить при отборе. Так получают
все пары строк и столбцов из
заданных списков, а не декартово
произведение в виде длинного ряда.
Возьмём из таблицы 3×4 строки
0 и 2, столбцы 1
и 3 и выведем подтаблицу:
import numpy as np
grid = np.arange(12).reshape(3, 4)
rows = np.array([0, 2])
cols = np.array([1, 3])
part = grid[np.ix_(rows, cols)]
print(part) # выведет [[ 1 3] [ 9 11]]
Из таблицы np.arange(16).reshape(4, 4)
выберите строки 1 и 3,
столбцы 0 и 2 и выведите
полученный фрагмент.
Из таблицы [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
возьмите строки 0 и 2,
столбец 1 и выведите форму
(2, 1).