NumPy参考 >例行程序 >Indexing routines > numpy.triu_indices
numpy.
triu_indices
(n,k = 0,m = None )[源代码] ¶返回(n,m)数组上三角的索引。
返回的索引对其有效的数组的大小。
对角线偏移(triu
有关详细信息,请参见)。
1.9.0版中的新功能。
返回数组将对其有效的数组的列维。默认情况下,m等于n。
三角形的索引。返回的元组包含两个数组,每个数组的索引沿数组的一维。可用于切片shape(n,n)的ndarray 。
笔记
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]])