numpy.diagflat#

numpy.diagflat(v, k=0)[source]#

创建一个二维数组,其扁平化输入作为对角线。

参数:
varray_like

输入数据,将其展平并设置为输出的第 k 条对角线。

kint, 可选

要设置的对角线;默认为 0,对应于“主”对角线,正(负)k 表示主对角线上方(下方)的对角线编号。

返回:
outndarray

二维输出数组。

参见

diag

一维和二维数组的 MATLAB 类比。

diagonal

返回指定对角线。

trace

沿对角线求和。

示例

>>> import numpy as np
>>> np.diagflat([[1,2], [3,4]])
array([[1, 0, 0, 0],
       [0, 2, 0, 0],
       [0, 0, 3, 0],
       [0, 0, 0, 4]])
>>> np.diagflat([1,2], 1)
array([[0, 1, 0],
       [0, 0, 2],
       [0, 0, 0]])