matlab中怎么求矩阵的特征值和特征向量
在进行数据分析的时候有时候需要求建立的矩阵的特征值,尤其是最大特征值以及其对应的特征向量,随着矩阵阶数的扩大,运算量比较大,但是如果使用软件Matlab来计算可以节省很多时间
matlab中怎么求矩阵的特征值和特征向量
1、启动Matlab ,在命令窗口输入要处理的矩阵AA=[1,4,2,4;1/4,1,1/2,1;1/2,2,1,1/2;1/4,1,2,1]输入完成后回车软件会按行列的形式显示矩阵顺便可以检查一下矩阵是否输入错误
2、接着输入[x,y]=eig(A) 回车 就可以看到矩阵的所有特征值和特征向量了特征值是对角矩阵y 矩阵x的每一列对应一个y中相应列的特征值此处注意括号必须是在英文输入法下输入 如果显示红色表示有问题需要重新输入
3、虽然已经计算出了矩阵的特征值和特征向量 ,但是如果只是计算这一个的话 ,完全可以观察得到最大的特征值 接着输入eigenvalue=diag(y);lamda=eigenvalue(1)lamda表示最大的特征值 这里lamda=4.2498
4、求出矩阵最大特征值之后虽然可以一眼看到特征向量, 但是不方便以后大量的处理矩阵此时再输入y_lamda = x(:, 1) 即最大特征值对应的特征向量
5、上面的过程只是适合进行一次两次这样的计算, 如果遇到需要较多的矩阵的时候或者这样的过程只是某些计算中的几步需求的时候就需要把前面的计算合在一起进行计算,同样也可以把这段代码放在需要的算法程序中
6、除了直接输入变量结果来查看的方法外 ,还可以直接在workspace中查看变量运算结果 ,如图中的lamda和y_lamda的结果值
文章来源:520常识