【发布时间】:2025-12-17 18:05:02
【问题描述】:
我有一个如下的数组:
poles = numpy.array([[-1+1j], [-1-1j], [-2+3j], [-2-3j]])
它的形状是(4,1)。
当我像下面这样使用 numpy.diag 时:
LA = numpy.diag(poles)
输出是[-1.+1.j],而我希望看到一个对角矩阵。
有人可以解释发生了什么以及应该怎么做才能看到对角矩阵吗?
我也尝试将形状更改为(1,4),但结果没有改变。
【问题讨论】:
-
您期待什么?
np.diag将采用数组的对角线值,因为其中一个轴的长度仅为 1,因此只有一项。 -
@busybear。我希望得到一个对角数组(4*4 矩阵),其中对角元素是极点元素,所有其他元素为零。
标签: python arrays numpy matrix diagonal