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])