numpy.triu_indices_from#

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

傳回 arr 上三角形的索引。

請參閱 triu_indices 以取得完整詳細資訊。

參數:
arrndarray,形狀為 (N, N)

索引將對方形陣列有效。

kint,選用

對角線偏移量(請參閱 triu 以取得詳細資訊)。

傳回值:
triu_indices_fromtuple,ndarray 的形狀 (2),形狀為 (N)

arr 上三角形的索引。

範例

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