numpy.triu_indices_from#

numpy.triu_indices_from(arr, k=0)[source]#

返回 arr 的上三角形的索引。

有关完整详细信息,请参见 triu_indices

参数::
arrndarray, shape(N, N)

这些索引对方形数组有效。

kint, 可选

对角线偏移量(有关详细信息,请参见 triu)。

返回::
triu_indices_from元组,形状为 (2) 的 ndarray,形状为 (N)

arr 的上三角形的索引。

备注

1.4.0 版中的新功能。

示例

>>> import numpy as np

创建一个 4x4 数组

>>> 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]])

将数组传递给它以获取上三角元素的索引。

>>> triui = np.triu_indices_from(a)
>>> triui
(array([0, 0, 0, 0, 1, 1, 1, 2, 2, 3]), array([0, 1, 2, 3, 1, 2, 3, 2, 3, 3]))
>>> a[triui]
array([ 0,  1,  2,  3,  5,  6,  7, 10, 11, 15])

这对于 triu_indices() 来说是语法糖。

>>> np.triu_indices(a.shape[0])
(array([0, 0, 0, 0, 1, 1, 1, 2, 2, 3]), array([0, 1, 2, 3, 1, 2, 3, 2, 3, 3]))

使用 k 参数返回从第 k 个对角线开始的上三角数组的索引。

>>> triuim1 = np.triu_indices_from(a, k=1)
>>> a[triuim1]
array([ 1,  2,  3,  6,  7, 11])