繁体   English   中英

Numpy 诊断不返回矩阵

[英]Numpy diag not returning a matrix

我正在尝试创建一个向量并将其嵌入到矩阵的对角线上。 我用了

A = np.random.rand(10, 1)
M = np.diag(A)

我从本教程和其他教程中认为我应该在对角线上获取 A 的元素,但我的 output 只是 A 的第一个元素。这里的错误是什么?

我想取 A 的 10 个元素(一个向量)并写下一个 10x10 矩阵,这些元素在对角线上,其他地方为零

a = np.random.rand(10, 1)

>>> a.ndim
2

返回一个二维数组, .diag尝试从中提取对角线,但第二维中没有任何内容,因此它只返回[0,0]项。 要创建一个在其对角线上带有a的二维数组,请创建a一维数组。

a = np.random.rand(10)
m = np.diag(a)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM