Matlab 多元分析

 2019-03-31 17:46:41

f1 = repmat(sqrt(val),size(vec1,1),1)
#val 为pcacov的特征值
        

 

 

1.主成分分析(PCA Principal Components Analysis)

  1.1 代码段

[vec1,lamda,rate] = pcacov(V)#V = corrcoef(data)
#vel1 为V 的特征向量,
#lamda 为V的特征值,
#rate为各个主成分的贡献率
f  = repmat(sign(vec1),size(vec1,1),1)
#修改符号,全为正 vec2
= vec1.*f

  1.2 框架

load data.txt
data = zscore(data)
V = corrcoef(data)
[vec1,lamda,rate] = pcacov(V)
f = repmat(sign(vec1),size(vec1,1),1)
vec2 = vec1.*f
contribution = cumsum(rate)
num = input('输入的主成分数目,基于Contribute >0.85')
df = data*vec2(:,1:mun)
Comprehensive_f = df*rete(1:num)/100
[stf,ind] = sort(Comprehensive_f,'descend')
stf = stf'
ind = ind'

2. 因子分析

  2.1 代码段

[lamda2,t] = rotatefactor(A,'method','varrmax')
#lamda2 为旋转后的载荷矩阵
#t为变换的正交矩阵
#A 一般为lamda(:,1:num)

[B,BINT,R,RINT,STATS] = regress(X,Y)
#BINT 是95%的置信区间 of B 是回归系数
#R是残差Residues
[d,dt,e,et,stats] = regress(Tscore,[ones(n,1),y])

 

posted @ 2019-03-31 17:47  27315  阅读(404)  评论(0编辑  收藏  举报