2024年4月2日发(作者:乌孙盼雁)
1. % 取指定特征值对应的特征向量
2. clc; clear all; close all;
3. A = [1 3 7
4. 3 8 9
5. 5 4 6];
6. k = 2;
7. [V, D] = eig(A);
8. % 返回的V是以列向量对应的特征向量
9. % D是对角线上为特征值的矩阵
10. D = diag(D);
11. [D, I] = sort(D, 'descend');
12. % 得到了对应的排序
13. if k > length(D)
14. k = length(D);
15. end
16. temp(1) = {D(1 : k)};
17. temp(2) = {V(:, I(1 : k))};
18. fprintf('n 前k个最大特征值 : n');
19. celldisp(temp(1));
20. fprintf('n 前k个最大特征值对应的特征向量 : n');
21. celldisp(temp(2));
[v,d]=eig(A);
A为你的矩阵,V为特征向量矩阵,D为特征值矩阵,然后对D求最大值即可得最大
特征根!
[V,D] = EIG(X) produces a diagonal matrix D of eigenvalues and a full matrix V
whose columns are the corresponding eigenvectors so that X*V = V*D.
V是特征向量,D是特征值
2024年4月2日发(作者:乌孙盼雁)
1. % 取指定特征值对应的特征向量
2. clc; clear all; close all;
3. A = [1 3 7
4. 3 8 9
5. 5 4 6];
6. k = 2;
7. [V, D] = eig(A);
8. % 返回的V是以列向量对应的特征向量
9. % D是对角线上为特征值的矩阵
10. D = diag(D);
11. [D, I] = sort(D, 'descend');
12. % 得到了对应的排序
13. if k > length(D)
14. k = length(D);
15. end
16. temp(1) = {D(1 : k)};
17. temp(2) = {V(:, I(1 : k))};
18. fprintf('n 前k个最大特征值 : n');
19. celldisp(temp(1));
20. fprintf('n 前k个最大特征值对应的特征向量 : n');
21. celldisp(temp(2));
[v,d]=eig(A);
A为你的矩阵,V为特征向量矩阵,D为特征值矩阵,然后对D求最大值即可得最大
特征根!
[V,D] = EIG(X) produces a diagonal matrix D of eigenvalues and a full matrix V
whose columns are the corresponding eigenvectors so that X*V = V*D.
V是特征向量,D是特征值