当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python numpy diag_indices用法及代码示例


本文简要介绍 python 语言中 numpy.diag_indices 的用法。

用法:

numpy.diag_indices(n, ndim=2)

返回索引以访问数组的主对角线。

这将返回一个索引元组,可用于访问数组的主对角线aa.ndim >= 2尺寸和形状(n,n,...,n)。为了a.ndim = 2这是通常的对角线,对于a.ndim > 2这是要访问的索引集a[i, i, ..., i]为了i = [0..n-1].

参数

n int

可以使用返回的索引的数组的每个维度的大小。

ndim 整数,可选

维数。

注意

例子

创建一组索引以访问 (4, 4) 数组的对角线:

>>> di = np.diag_indices(4)
>>> di
(array([0, 1, 2, 3]), array([0, 1, 2, 3]))
>>> 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[di] = 100
>>> a
array([[100,   1,   2,   3],
       [  4, 100,   6,   7],
       [  8,   9, 100,  11],
       [ 12,  13,  14, 100]])

现在,我们创建索引来操作 3-D 数组:

>>> d3 = np.diag_indices(2, 3)
>>> d3
(array([0, 1]), array([0, 1]), array([0, 1]))

并使用它将零数组的对角线设置为 1:

>>> a = np.zeros((2, 2, 2), dtype=int)
>>> a[d3] = 1
>>> a
array([[[1, 0],
        [0, 0]],
       [[0, 0],
        [0, 1]]])

相关用法


注:本文由纯净天空筛选整理自numpy.org大神的英文原创作品 numpy.diag_indices。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。