Spec-Zone.ru › NumPy 2.0

numpy.triu_indices

numpy.triu_indices(n, k=0, m=None)[source]

Возвращает индексы для верхней треугольной части массива (n, m).

Параметры:
nint

Размер массивов, для которых возвращаемые индексы будут валидными.

kint, необязательно

Смещение диагонали (см. triu для подробностей).

mint, необязательно

Добавлен в версии 1.9.0.

Размер столбцов массивов, для которых возвращаемые массивы будут валидными. По умолчанию m принимается равным n.

Возвращает:
indsкортеж, форма (2) массивов, форма(n)

Индексы для треугольника. Возвращаемый кортеж содержит два массива, каждый из которых содержит индексы вдоль одного измерения массива. Может быть использован для среза массива ndarray формы (n, n).

См. также

tril_indices

аналогичная функция, для нижней треугольной части.

mask_indices

общая функция, принимающая произвольную функцию маскирования.

triu, tril

Примечания

Добавлен в версии 1.4.0.

Примеры

Вычислить два разных набора индексов для доступа к массивам 4x4, один для верхней треугольной части, начиная с главной диагонали, и один, начиная с двух диагоналей правее:

>>> iu1 = np.triu_indices(4)
>>> iu2 = np.triu_indices(4, 2)

Вот как они могут быть использованы с образцовым массивом:

>>> a = np.arange(16).reshape(4, 4)
>>> a
array([[ 0,  1,  2,  3],
       [ 4,  5,  6,  7],
       [ 8,  9, 10, 11],
       [12, 13, 14, 15]])

Оба для индексирования:

>>> a[iu1]
array([ 0,  1,  2, ..., 10, 11, 15])

И для присваивания значений:

>>> a[iu1] = -1
>>> a
array([[-1, -1, -1, -1],
       [ 4, -1, -1, -1],
       [ 8,  9, -1, -1],
       [12, 13, 14, -1]])

Эти значения покрывают только небольшую часть всего массива (две диагонали справа от главной диагонали):

>>> a[iu2] = -10
>>> a
array([[ -1,  -1, -10, -10],
       [  4,  -1,  -1, -10],
       [  8,   9,  -1,  -1],
       [ 12,  13,  14,  -1]])

© 2005–2024 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/2.0/reference/generated/numpy.triu_indices.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API