f triu_indices_from | NumPy

numpy.triu_indices_from

numpy.triu_indices_from(arr, k=0)

Функция triu_indices_from() возвращает индексы элементов верхнего треугольника указанного массива.

Параметры:
arr - массив NumPy.
Двумерный массив NumPy.
k - целое число.
Определяет смещение диагонали треугольника.
Возвращает:
tuple - кортеж массивов NumPy
кортеж массивов с индексами элементов верхнего треугольника указанного массива.
Смотрите так же:
triu_indices, tril_indices, tril_indices_from, tril, triu


Примеры

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

>>> import numpy as np
>>> 
>>> a = np.arange(20).reshape(5, 4)
>>> a
array([[ 0,  1,  2,  3],
       [ 4,  5,  6,  7],
       [ 8,  9, 10, 11],
       [12, 13, 14, 15],
       [16, 17, 18, 19]])
>>> 
>>> np.triu_indices_from(a)
(array([0, 0, 0, 0, 1, 1, 1, 2, 2, 3], dtype=int32), array([0, 1, 2, 3, 1, 2, 3, 2, 3, 3], dtype=int32))
>>> 
>>> a[np.triu_indices_from(a)] = 77
>>> a
array([[77, 77, 77, 77],
       [ 4, 77, 77, 77],
       [ 8,  9, 77, 77],
       [12, 13, 14, 77],
       [16, 17, 18, 19]])

Параметр k, позволяет указать смещение диагонали треугольника:

>>> a[np.triu_indices_from(a, k = 2)] = 0
>>> a
array([[77, 77,  0,  0],
       [ 4, 77, 77,  0],
       [ 8,  9, 77, 77],
       [12, 13, 14, 77],
       [16, 17, 18, 19]])