numpy.diag_indices_from

numpy.diag_indices_from(arr)

Функция diag_indices_from() возвращает индексы элементов главной диагонали указанного массива. Указанный массив должен быть "квадратной" формы.

Словосочетание "квадратный массив" может быть обобщено на массивы большей размерности - не важно сколько осей у массива, главное что бы все они были одинаковой длины. А понятие диагональ массива означает что это на самом деле главная диагональ, т.е. диагональ начинается в точке отсчета индексов и заканчивается в точке их максимального значения.

Параметры:
arr - массив NumPy.
"Квадратный" массив NumPy.
Возвращает:
tuple - кортеж массивов NumPy
кортеж массивов с индексами диагональных элементов указанного массива.
Смотрите так же:
diag_indices, diag, diagflat, diagonal


Примеры

Данная функция абсолютно аналогична функции diag_indices(), только вместо параметров с длиной оси и количеством осей (размерностью), она сразу принимает указанный массив:

>>> import numpy as np
>>> 
>>> a = np.arange(25).reshape(5, 5)
>>> a
array([[ 0,  1,  2,  3,  4],
       [ 5,  6,  7,  8,  9],
       [10, 11, 12, 13, 14],
       [15, 16, 17, 18, 19],
       [20, 21, 22, 23, 24]])
>>> 
>>> np.diag_indices_from(a)
(array([0, 1, 2, 3, 4]), array([0, 1, 2, 3, 4]))
>>> 
>>> a[np.diag_indices_from(a)]
array([ 0,  6, 12, 18, 24])