好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

主成分分析法MATLAB实现.docx

11页
  • 卖家[上传人]:枫**
  • 文档编号:534683017
  • 上传时间:2023-07-27
  • 文档格式:DOCX
  • 文档大小:43.35KB
  • / 11 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 主成分解析法MATLAB的实现MATLAB结课作业指导老师:张肃班级:信管121姓名:桂亚东学号:4118利用Matlab编程实现主成分解析归纳Matlab言是此刻国上科学界(特别是自控制域)最具影响力、也是最有活力的件它起源于矩运算,并已展成一种高度集成的算机言它供应了大的科学运算、灵便的程序流程、高量的形可化与界面、与其他程序和言的便利接口的功能Matlab言在各国高校与研究位起重视要的作用主成分解析是把原来多个量划少许几个合指的一种解析方法,从数学角度来看,是一种降理技主成分解析计算步骤①算相关系数矩r11r12r1pr21r22r2pRrp1rp2rpp(1)在(3.5.3)式中,rij(i,j=1,2,⋯,p)原量的xi与xj之的相关系数,其算公式n(xkixi)(xkjxj)rijk1nnxi)2xj)2(xki(xkjk1k1(2)因R是称矩(即rij=rji),所以只需算上三角元素或下三角元素即可②算特色与特色向量第一解特色方程IR0,通常用雅可比法(Jacobi)求出特征i(i1,2,,p),并使其按大小序排列,即12,p0;尔后分求p出于特色i的特色向量ei(i1,2,,p)。

      里要求ei=1,即eij21,其j1中 eij表示向量ei的第j个重量③ 算主成分献率及累献率主成分zi的献率i(i1,2,,p)pk1k累献率ikk1(i1,2,,p)pkk1一般取累献率达85—95%的特色1,2,,m所的第一、第二,⋯,第 m(m≤p)个主成分④ 算主成分荷其算公式lijp(zi,xj)ieij(i,j1,2,,p)(3)获取各主成分的荷今后,可以依照(3.5.2)式一步算,获取各主成分的得分z11z12z1mz21z22z2mZzn1zn2znm(4)2. 函数作用——用总和标准化法标准化矩阵——计算相关系数矩阵;计算特色值和特色向量;对主成分进行排序;计算各特色值贡献率;优选主成分(累计贡献率大于85%),输出主成分个数;计算主成分载荷——计算各主成分得分、综合得分并排序——读入数据文件;调用以上三个函数并输出结果3. 源程序总和标准化法标准化矩阵%,用总和标准化法标准化矩阵functionstd=cwstd(vector)cwsum=sum(vector,1);%对列求和[a,b]=size(vector);%矩阵大小,a为行数,b为列数fori=1:aforj=1:bstd(i,j)=vector(i,j)/cwsum(j);endend计算相关系数矩阵%functionresult=cwfac(vector);fprintf('相关系数矩阵:\n')std=CORRCOEF(vector)%计算相关系数矩阵fprintf('特色向量(vec)及特色值(val):\n')[vec,val]=eig(std)%求特色值(val)及特色向量(vec)newval=diag(val);[y,i]=sort(newval);%对特色根进行排序,y为排序结果,i为索引fprintf('特色根排序:\n')forz=1:length(y)newy(z)=y(length(y)+1-z);endfprintf('%g\n',newy)rate=y/sum(y);fprintf('\n贡献率:\n')newrate=newy/sum(newy)sumrate=0;newi=[];fork=length(y):-1:1sumrate=sumrate+rate(k);newi(length(y)+1-k)=i(k);ifsumrate>break;endend%记下累积贡献率大85%的特色值的序号放入newi中fprintf('主成分数:%g\n\n',length(newi));fprintf('主成分载荷:\n')forp=1:length(newi)forq=1:length(y)result(q,p)=sqrt(newval(newi(p)))*vec(q,newi(p));endend%计算载荷disp(result)%,计算得分functionscore=cwscore(vector1,vector2);sco=vector1*vector2;csum=sum(sco,2);[newcsum,i]=sort(-1*csum);[newi,j]=sort(i);fprintf('计算得分:\n')score=[sco,csum,j]%得分矩阵:sco为各主成分得分;csum为综合得分;j为排序结果%functionprint=cwprint(filename,a,b);%filename为文本文件文件名,a为矩阵行数(样本数),b为矩阵列数(变量指标数)fid=fopen(filename,'r')vector=fscanf(fid,'%g',[ab]);fprintf('标准化结果以下:\n')v1=cwstd(vector)result=cwfac(v1);cwscore(v1,result);4. 程序测试原始数据中国大陆35个大城市某年的10项社会经济统计指标数据见下表。

      年终非农农业工业客运货运地方财政城乡居民在岗职工城市业总量总量在岗职年终存储薪水总数名称总人口人口比总产值总产值(万(万估量内收工人数余额(万人)(%)(万元)(万元)人)吨)入(万元)(万人)(万元)(万元)北京1818434271999970620323455622790863268066465773301天津91501136226455023259263171128073113019312254343石家庄229186806885768292919113523487095875758877太原323603827377501937118952032773943100654023呼和浩特2365343816452235126231057831396588309337沈阳91295418582673377821541256791990169981152811大连61879739842638510780191877092277556796965922长春818532105966343481095323570964803744884447哈尔滨7266385541861236720752048144364500201309151上海142069019545290986406444854318500259712005605445南京198919913072737142691119366429956804721357861杭州6141473712000796178831168444959374259671180947宁波714282351062286622215102985017235246350824034合肥46287642514125489315172336281622931369577福州321522886555351885171904675245030220680607厦门53333745751124372825704187582108331657484南昌86882892305881367431891677142640460479,555济南5148630262858825915117754606904126970756696青岛323823201149203613408170386584354978045961704郑州467742552876011043367683872525135338696848武汉91211291750608597931544260465857480551314766长沙71146367309817987065718323660346。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.