numpy.diag#
- numpy.diag(v, k=0)[source]#
提取对角线或构造对角线数组。
如果您使用此函数提取对角线并希望写入结果数组,请参阅
numpy.diagonal
的更详细文档;它返回副本还是视图取决于您使用的 NumPy 版本。- 参数:
- varray_like
如果 v 是一个二维数组,则返回其第 k 个对角线的副本。如果 v 是一个一维数组,则返回一个二维数组,其中 v 在第 k 个对角线上。
- kint,可选
要提取的对角线。默认值为 0。使用 k>0 表示主对角线上的对角线,使用 k<0 表示主对角线下的对角线。
- 返回值:
- outndarray
提取的对角线或构造的对角线数组。
示例
>>> import numpy as np >>> x = np.arange(9).reshape((3,3)) >>> x array([[0, 1, 2], [3, 4, 5], [6, 7, 8]])
>>> np.diag(x) array([0, 4, 8]) >>> np.diag(x, k=1) array([1, 5]) >>> np.diag(x, k=-1) array([3, 7])
>>> np.diag(np.diag(x)) array([[0, 0, 0], [0, 4, 0], [0, 0, 8]])