资源简介

正宗因子分析算法,完美实现因子分析, 有因子旋转,因子得分,因子评价,已经过检验可以使用,可放心下载运行。

资源截图

代码片段和文件信息

function [Fv0Avw]=yinzi1(xnumber)
%此程序是从因子分析直接做的算法
%v0为部分主成分系数,即相关系数矩阵的部分特征向量
%F为因子得分
%A为旋转后的因子载荷矩阵
%w是对因子评价由大到小的排序
%v是对因子评价排序后元素在原来因子评价向量中的位置。

[x]=bxh(x);%对数据进行标准化处理
[nm]=size(x);%n为x的行数m为x的列数,即n为样本数m为属性个数。
x1=x;

s=x1(1:)‘*x1(1:)/(n-1);
for i=2:n
    s=s+x1(i:)‘*x1(i:)/(n-1);
end

%s为相关系数矩阵。

[vd]=eig(s‘nobalance‘);

 for i=1:m
     e=1/norm(v(:m-i+1));
     %e是向量v(:m-i+1)的模长
     v1(:i)=e.*v(:m-i+1);
 end
%将特征向量单位化,同时由特征值从大到小排列.

for i=m:-1:1 
    d1(m-i+1)=d(ii);
end
d=d1;

%计算各个主成分的贡献率
for i=1:m 
    t(1i)=d(i)/sum(d(:));
    t(2i)=sum(d(1:i))/sum(d(:));
end

%因子载荷矩阵v0
 for i=1:m
    if (t(2i))        v0(:i)=sqrt(d(i)).*v1(:i);
        t(2i)=z(i);%向量z是累计贡献率前几个
    end       
 end
 
 A=v0;
 %对A施行方差最大正交变换(旋转)
 [nx_Any_A]=size(A);%nx_A为A的行数n

评论

共有 条评论