文章详情

深度解读行业趋势与技术前沿

numpy函数:diag函数

numpy.diag()是一个用于返回矩阵对角线元素或创建对角阵(diagonalarray)的函数。下面通过例子来说明问题。

例子

首先引入numpy库并创建一个对角阵,如下所示:

importnumpyasnpxnp.diag((1,2,3))print(x)

输出结果为:

[[100][020][003]]

接下来,我们可以提取二维数组x的对角元素的值,构成一个一维数组。例如:

x(9).reshape((3,3))print(x)

输出结果为:

[[012][345][678]]

我们也可以使用第二个参数来获取其他元素。请自行观察这个值在x数组中的位置。

ynp.diag(x)print(y)

输出结果为:

[048]

如果连续使用两个diag函数,可以得到一个对角阵,除对角线以外的元素均为零。

x(10,19).reshape((3,3))print(x)

输出结果为:

[[101112][131415][161718]]
znp.diag(np.diag(x))print(z)

输出结果为:

[[1000][0140][0018]]