You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

关于np.linalg.eig计算4x4矩阵返回特征向量是否有误的咨询

np.linalg.eig返回4x4矩阵特征向量结果正确性说明

问题背景

构造的测试矩阵如下:

M = np.array ([[ 1., 1., -1., 0], [ 1., -2.,  0., 1], [ 1., 1., -1., 0],[ 0.,  0.,  0., 0.]])

基于线性代数规则推导:矩阵最后一行全为0,非零特征值对应的特征向量$[x_1, x_2, x_3, x_4]$的第四个分量$x_4$应该为0,因此怀疑np.linalg.eig返回结果有误。

结果正确性验证

首先确认推导逻辑成立:若$\lambda$为非零特征值,对应特征向量$v=(x_1,x_2,x_3,x_4)$满足$Mv=\lambda v$。由于M第四行全为0,因此$Mv$的第四个分量恒为0,对应等式右侧$\lambda x_4=0$,$\lambda \neq 0$时确实要求$x_4=0$。

查看np.linalg.eig的输出规则:返回的特征向量矩阵每一列对应一个特征值的特征向量,矩阵第四行即为所有特征向量的$x_4$分量。对照你给出的输出:

Eigenvalues :
[ 0.95646559+1.656647j  0.95646559-1.656647j -1.91293118+0.j
0.        +0.j      ]
Eigenvectors :
[[ 0.77374282+0.j          0.77374282-0.j         -0.08130353+0.j
-0.64465837+0.j        ]
[ 0.19917375-0.11160644j  0.19917375+0.11160644j -0.93378468+0.j
-0.32232919+0.j        ]
[-0.08274466-0.58510614j -0.08274466+0.58510614j  0.34847655+0.j
0.40291148+0.j        ]
[ 0.        +0.j          0.        -0.j          0.        +0.j
0.56407607+0.j        ]]
  • 前三个非零特征值对应的特征向量,$x_4$分量分别为0+0j、0-0j、0+0j,完全符合$x_4=0$的要求
  • 只有第四个特征值为0,对应的特征向量$x_4$分量非零,也满足$0\times x_4=0$的等式约束

结论

np.linalg.eig的计算结果完全符合线性代数规则,该误解来自对特征向量矩阵行列对应关系的误读。

内容的提问来源于stack exchange,提问作者Suspicious Fred

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 18:15:04