Spec-Zone.ru › NumPy 1.14

numpy.triu_indices

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

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

Параметры:

n : int

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

k : int, необязательно

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

m : int, необязательно

Введено в версии 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,  3,  5,  6,  7, 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–2019 NumPy Developers
Licensed under the 3-clause BSD License.
https://docs.scipy.org/doc/numpy-1.14.5/reference/generated/numpy.triu_indices.html

Spec-Zone.ru

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