matlab中怎么求矩阵的特征值和特征向量

  • A+
所属分类:百科知识

在进行数据分析的时候有时候需要求建立的矩阵的特征值,尤其是最大特征值以及其对应的特征向量,随着矩阵阶数的扩大,运算量比较大,但是如果使用软件Matlab来计算可以节省很多时间

matlab中怎么求矩阵的特征值和特征向量

启动Matlab ,在命令窗口输入要处理的矩阵A

A=[1,4,2,4;1/4,1,1/2,1;1/2,2,1,1/2;1/4,1,2,1]

输入完成后回车软件会按行列的形式显示矩阵

顺便可以检查一下矩阵是否输入错误

matlab中怎么求矩阵的特征值和特征向量

接着输入[x,y]=eig(A) 回车

就可以看到矩阵的所有特征值和特征向量了

特征值是对角矩阵y 矩阵x的每一列对应一个y中相应列的特征值

此处注意括号必须是在英文输入法下输入 如果显示红色表示有问题需要重新输入

matlab中怎么求矩阵的特征值和特征向量

虽然已经计算出了矩阵的特征值和特征向量 ,但是如果只是计算这一个的话 ,完全可以观察得到最大的特征值
接着输入

eigenvalue=diag(y);

lamda=eigenvalue(1)

lamda表示最大的特征值 这里lamda=4.2498

matlab中怎么求矩阵的特征值和特征向量

求出矩阵最大特征值之后虽然可以一眼看到特征向量, 但是不方便以后大量的处理矩阵

此时再输入

y_lamda = x(:, 1) 即最大特征值对应的特征向量

matlab中怎么求矩阵的特征值和特征向量

上面的过程只是适合进行一次两次这样的计算, 如果遇到需要较多的矩阵的时候或者这样的过程只是某些计算中的几步需求的时候就需要把前面的计算合在一起进行计算,同样也可以把这段代码放在需要的算法程序中

matlab中怎么求矩阵的特征值和特征向量

除了直接输入变量结果来查看的方法外 ,还可以直接在workspace中查看变量运算结果 ,如图中的lamda和y_lamda的结果值

matlab中怎么求矩阵的特征值和特征向量

历史上的今天:

weinxin
自学设计网
微信扫一扫领取设计学习资料/本站会员
推荐应用

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: