主成分分析得分 matlab,主成分分析Matlab程序设计

PCA步骤:

(1)对原始数据进行标准化处理

(2)计算样本相关系数矩阵

(3)计算相关系数矩阵R的特征值和相应的特征向量

(4)选择重要的主成分,写出主成分表达式

案例问题:企业综合实力排序

企业综合实力评价表:

企业序号

净利润率/%

固定资产利润率/%

总产值利润率/%

销售收入利润率/%

产品成本利润率/%

物耗利润率/%

人均利润1000/人

流动资金

1

40.4

24.7

7.2

6.1

8.3

8.7

2.442

20

2

25

12.7

11.2

11

12.9

20.2

3.542

9.1

3

13.2

3.3

3.9

4.3

4.4

5.5

0.578

3.6

4

22.3

6.7

5.6

3.7

6

7.4

0.176

7.3

5

34.3

11.8

7.1

7.1

8

8.9

1.726

27.5

6

35.6

12.5

16.4

16.7

22.8

29.3

3.017

26.6

7

22

7.8

9.9

10.2

12.6

17.6

0.847

10.6

8

48.4

13.4

10.9

9.9

10.9

13.9

1.772

17.8

9

40.6

19.1

19.8

19

29.7

39.6

2.449

35.8

10

24.8

8

9.8

8.9

11.9

16.2

0.789

13.7

11

12.5

9.7

4.2

4.2

4.6

6.5

0.874

3.9

12

1.8

0.6

0.7

0.7

0.8

1.1

0.056

1

13

32.3

13.9

9.4

8.3

9.8

13.3

2.126

17.1

14

38.5

9.1

11.3

9.5

12.2

16.4

1.327

11.6

15

26.2

10.1

5.6

15.6

7.7

30.1

0.126

25.9

%主成分分析 PAC 的Matlab实现

%------------------------

% % 数据的输入及处理

clc

clear all

A=xlsread('D:\evaluation.xlsx',1,'B2:I16');

%数据的标准化处理

a=size(A,1);%获得矩阵A的行大小

b=size(A,2);%获得矩阵A的列大小

for i=1:b

SA(:,i)=(A(:,i)-mean(A(:,i)))/std(A(:,i));%std函数是用来求向量的标准差

end

% %计算相关系数矩阵的特征值和特征向量

CM=corrcoef(SA);%计算相关系数矩阵

[V,D]=eig(CM);%计算特征值和特征向量

for j=1:b

DS(j,1)=D(b+1-j,b+1-j);%对特征值按降序排列

end

for i=1:b

DS(i,2)=DS(i,1)/sum(DS(:,1));%贡献率

DS(i,3)=sum(DS(1:i,1))/sum(DS(:,1));%累计贡献率

end

% % 选择主成分及对应的特征向量

T=0.9;%主成分信息保留率

for k=1:b

if DS(k,3)>=T

Com_num=k;

break;

end

end

%提取主成分对应的特征向量

for j=1:Com_num

PV(:,j)=V(:,b+1-j);

end

% % 计算各评价对象的主成分得分

new_score=SA*PV;

for i=1:a

total_score(i,1)=sum(new_score(i,:));

total_score(i,2)=i;

end

result_report=[new_score,total_score];%将各主成分得分与总分放在同一个矩阵中

result_report=sortrows(result_report,-4);%按总分降序排序

% % 输出模型及结果报告

disp('特征值及其贡献率,累加贡献率:')

DS

disp('信息保留率T对应的主成分数与特征向量:')

Com_num

PV

disp('主成分得分及排序(按第四列的总分进行排序,前三列为个主成分得分,第五列为企业编号)')

result_report

结果:

特征值及其贡献率,累加贡献率: DS =     5.7361    0.7170    0.7170     1.0972    0.1372    0.8542     0.5896    0.0737    0.9279     0.2858    0.0357    0.9636     0.1456    0.0182    0.9818     0.1369    0.0171    0.9989     0.0060    0.0007    0.9997     0.0027    0.0003    1.0000 信息保留率T对应的主成分数与特征向量: Com_num =      3 PV =     0.3334    0.3788    0.3115     0.3063    0.5562    0.1871     0.3900   -0.1148   -0.3182     0.3780   -0.3508    0.0888     0.3853   -0.2254   -0.2715     0.3616   -0.4337    0.0696     0.3026    0.4147   -0.6189     0.3596   -0.0031    0.5452 主成分得分及排序(按第四列的总分进行排序,前三列为个主成分得分,第五列为企业编号) result_report =     5.1936   -0.9793    0.0207    4.2350    9.0000     0.7662    2.6618    0.5437    3.9717    1.0000     1.0203    0.9392    0.4081    2.3677    8.0000     3.3891   -0.6612   -0.7569    1.9710    6.0000     0.0553    0.9176    0.8255    1.7984    5.0000     0.3735    0.8378   -0.1081    1.1033   13.0000     0.4709   -1.5064    1.7882    0.7527   15.0000     0.3471   -0.0592   -0.1197    0.1682   14.0000     0.9709    0.4364   -1.6996   -0.2923    2.0000    -0.3372   -0.6891    0.0188   -1.0075   10.0000    -0.3262   -0.9407   -0.2569   -1.5238    7.0000    -2.2020   -0.1181    0.2656   -2.0545    4.0000    -2.4132    0.2140   -0.3145   -2.5137   11.0000    -2.8818   -0.4350   -0.3267   -3.6435    3.0000    -4.4264   -0.6180   -0.2884   -5.3327   12.0000 >>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/565371.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【OpenCV 例程200篇】223. 特征提取之多边形拟合(cv.approxPolyDP)

『youcans 的 OpenCV 例程200篇 - 总目录』 【youcans 的 OpenCV 例程200篇】223. 特征提取之多边形拟合 目标特征的基本概念 通过图像分割获得多个区域,得到区域内的像素集合或区域边界像素集合。我们把感兴趣的人或物称为目标,目标所处的区域就是目标…

matlab指令vpa(j10),matlab中vpa函数

Matlab中矩阵函数_IT/计算机_专业资料。Matlab中矩阵函数 矩阵转置...Matlab 中 solve 函数主要是用来求解线性方程组的解析解或者精确解。对于得 出的结果是符号变量,可以通过 vpa()得出任意位数的数值解! solve 函数的语法定义主要有......控制系统matlab常用函数的使用_计算…

Eclipse快捷键生成语句

当我们使用Eclipse进行项目的开发的时候,有的时候我们需要重复输入main方法和输出语句等,下面就教给大家如何在Eclipse开发中使用快捷键生长main方法和输出语句。 快捷键生成语句 生成main方法:输入"main" ,按ALT/&…

【OpenCV 例程200篇】221.加密马赛克图像处理与解密复原

『youcans 的 OpenCV 例程200篇 - 总目录』 【youcans 的 OpenCV 例程200篇】221.加密马赛克图像处理与解密复原 9. 图像的马赛克处理 马赛克效果是广泛使用的图像和视频处理方法。将图像中指定区域的色阶细节劣化,造成色块模糊的效果,看上去像是一个个…

小网站asp好还是php好,网站程序是asp好还是php好,哪个更利于优化?

网站程序是asp好还是php好呢?如果我们要做seo优化,哪一个又更利于优化呢?毕竟,现在在网上所看到的程序,是比较多的,选择一个好的网站程序,可以少走很多弯路。如果,大家建一个网站是为…

Java IO深入

IO体系 Java IO 体系种类繁多,感觉很复杂,但其实是 IO 涉及的因素太多了。在进行介绍的时候添加了设计模式等的使用,会让你感觉更加难以理解难以使用这些IO类,在此对java的IO做了一个详细的总结。 IO 类设计出来,肯定…

【OpenCV 例程200篇】222. 特征提取之弗里曼链码(Freeman chain code)

OpenCV 例程200篇 总目录 【youcans 的 OpenCV 例程200篇】222. 特征提取之弗里曼链码(Freeman chain code) 目标特征的基本概念 通过图像分割获得多个区域,得到区域内的像素集合或区域边界像素集合。我们把感兴趣的人或物称为目标&#xff…

python2与python3,Python2和Python3的10大区别

1.性能Py3.0运行pystone benchmark的速度比Py2.5慢30%。Guido认为Py3.0有极大的优化空间,在字符串和整形操作上可以取得很好的优化结果。2.编码Py3.0源码文件默认使用utf-8编码,这就使得以下代码是合法的:>>>中国 china>>>…

【OpenCV 例程200篇】224. 特征提取之提取骨架

OpenCV 例程200篇 总目录 【youcans 的 OpenCV 例程200篇】224. 特征提取之提取骨架 目标特征的基本概念 通过图像分割获得多个区域,得到区域内的像素集合或区域边界像素集合。我们把感兴趣的人或物称为目标,目标所处的区域就是目标区域。 特征通常是针…

inuri .php id=,php常用函数(遇见就补充)

preg_match()preg_match(string pattern, string subject [, array matches [, int flags]])在subject字符串中搜索与 pattern给出的正则表达式相匹配的内容。如果提供了 matches,则会被搜索的结果所填充。$matches[0]将包含于整个模式匹配的文本,$match…

【OpenCV 例程200篇】226. 区域特征之紧致度/圆度/偏心率

『youcans 的 OpenCV 例程200篇 - 总目录』 【youcans 的 OpenCV 例程200篇】226. 区域特征之紧致度/圆度/偏心率 特征通常是针对于图像中的某个目标而言的。 我们把感兴趣的人或物称为目标,目标所处的区域就是目标区域。图像分割之后,还要对目标区域进…

Java常见的几种设计模式

单例模式 指一个应用程序中,某个类的实例对象只有一个,你没有办法去new,因为构造器是被private修饰的,一般通过getInstance()的方法来获取它们的实例。 getInstance()的返回值是一个对象的引用,并不是一个新的实例&a…

【OpenCV 例程200篇】227. 特征描述之 LBP 纹理特征算子

『youcans 的 OpenCV 例程200篇 - 总目录』 【youcans 的 OpenCV 例程200篇】227. 特征描述之 LBP 纹理特征算子 特征通常是针对于图像中的某个目标而言的。 针对目标所在区域的特征描述符(Region descriptors),称为区域特征描述子。 4.2 纹…

php日志数据统计,awk 进行php日志累计报错统计

问题线上服务器一百多台通过tail -f /var/log/error_web* 方式来查看,速度滚动刷新太快,而且不方便定位问题按照前辈的『观察法』,作为新人实在是有难度,所以使用awk命令对输出格式格式化了一下。思路将每一行tail得到的日志通过a…

【OpenCV 例程200篇】228. 特征描述之 extendLBP 改进算子

『youcans 的 OpenCV 例程200篇 - 总目录』 【youcans 的 OpenCV 例程200篇】228. 特征描述之 extendLBP 改进算子 特征通常是针对于图像中的某个目标而言的。针对目标所在区域的特征描述符(Region descriptors),称为区域特征描述子。 局部…

Java设计模式汇总详解

设计模式 设计模式是很多程序员总结出来的最佳实践。曾经在刚开始写项目的时候学习过设计模式,在开发过程中,也主动或者被动的使用过。现在写代码虽说不会特意明确在用哪种设计模式,但潜移默化的写出来公认的最佳实践代码,毕竟看…

php中reset函数,PHP reset()函数

实例 1所有相关方法的演示:$people array("Peter", "Joe", "Glenn", "Cleveland");echo current($people) . ""; // The current element is Peterecho next($people) . ""; // The next element of …

【OpenCV 例程200篇】229. 特征描述之 LBP 算子比较(skimage)

『youcans 的 OpenCV 例程200篇 - 总目录』 【youcans 的 OpenCV 例程200篇】229. 特征描述之 LBP 算子比较(skimage) 局部二值模式(LBP,Local binary patterns)是一种用来描述图像局部纹理特征的算子,它具…

Java多线程的使用

无论在我们的工作中还是在我们的生活中,我们都会用到多线程的知识,今天就给大家讲一下如何使用多线程。 序幕 线程的启动 如何使线程暂停 如何使线程停止 线程的优先级 线程安全相关的问题 我们首先要知道进程和线程分别是什么? 进程 - 进…

oracle 存储过程 db,oracle数据库的存储过程是什么?

oracle数据库的存储过程:一组为了完成特定功能的SQL语句集,经编译后存储在数据库中。存储过程是由流控制和SQL语句书写的过程,这个过程经编译和优化后存储在数据库服务器中,应用程序使用时只要调用即可。存储过程(Stored Procedur…