如何matlab求矩阵权重,请给出必要的语句

来源:百度知道 编辑:UC知道 时间:2024/06/04 10:03:39
以矩阵B=[1 1/3 1/3 1/5 3 1 1 3/5 3 1 1 3/5 5 5/3 5/3 1]为例

matlab里自带的是det函数

det(B)即可

B=[1 1/3 1/3 1/5;3 1 1 3/5;3 1 1 3/5;5 5/3 5/3 1]

B =

1.0000 0.3333 0.3333 0.2000
3.0000 1.0000 1.0000 0.6000
3.0000 1.0000 1.0000 0.6000
5.0000 1.6667 1.6667 1.0000

>> det(B)

ans =

0

b=[1 1/3 1/3 1/5 3 1 1 3/5 3 1 1 3/5 5 5/3 5/3 1]

[x,y]=eig(b)

得x为特征向量矩阵 y为特征值矩阵

找到y中对应最大的特征值所在列m

w=x(:,m)/sum(x(:,m))

w就是权重!

矩阵权重是啥?