聚类分析Word文件下载.docx

上传人:b****1 文档编号:872687 上传时间:2023-04-29 格式:DOCX 页数:17 大小:179.06KB
下载 相关 举报
聚类分析Word文件下载.docx_第1页
第1页 / 共17页
聚类分析Word文件下载.docx_第2页
第2页 / 共17页
聚类分析Word文件下载.docx_第3页
第3页 / 共17页
聚类分析Word文件下载.docx_第4页
第4页 / 共17页
聚类分析Word文件下载.docx_第5页
第5页 / 共17页
聚类分析Word文件下载.docx_第6页
第6页 / 共17页
聚类分析Word文件下载.docx_第7页
第7页 / 共17页
聚类分析Word文件下载.docx_第8页
第8页 / 共17页
聚类分析Word文件下载.docx_第9页
第9页 / 共17页
聚类分析Word文件下载.docx_第10页
第10页 / 共17页
聚类分析Word文件下载.docx_第11页
第11页 / 共17页
聚类分析Word文件下载.docx_第12页
第12页 / 共17页
聚类分析Word文件下载.docx_第13页
第13页 / 共17页
聚类分析Word文件下载.docx_第14页
第14页 / 共17页
聚类分析Word文件下载.docx_第15页
第15页 / 共17页
聚类分析Word文件下载.docx_第16页
第16页 / 共17页
聚类分析Word文件下载.docx_第17页
第17页 / 共17页
亲,该文档总共17页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

聚类分析Word文件下载.docx

《聚类分析Word文件下载.docx》由会员分享,可在线阅读,更多相关《聚类分析Word文件下载.docx(17页珍藏版)》请在冰点文库上搜索。

聚类分析Word文件下载.docx

3.17

2.80

1.15

6

8.65

1.07

3.50

16

3.84

1.08

1.01

7

4.55

6.16

4.25

17

3.96

1.36

1.09

8

4.75

5.60

2.75

18

3.42

1.68

1.25

9

5.89

1.39

1.23

19

0.89

10

4.05

3.45

2.51

20

1.18

0.78

1.24

仅从1995年世界各国人文发展指数的排序中,选取发达国家和发展中国家各5个,观察两个重要指标:

Born出生时预期寿命(岁),Adult成人识字率(%)。

以此样本为实例样本建立判别模型,对四个待判国家进行判别分析,得出各个待判国家分别属于哪一类国家。

如下表(表5-1)所示,给出了14个国家的出生时预期寿命和成人识字率的数据统计。

表5-114个国家的出生时预期寿命和成人识字率

类别

Category

序号

Num

指标Target

国家名称Country

出生时预期寿命Born

成人识字率Adult

第一类

(发达国家)

美国

76

99

日本

79.5

瑞士

78

阿根廷

72.1

95.9

阿联酋

73.8

77.7

第二类

(发展中国家)

保加利亚

71.2

93

巴西

75.3

94.9

巴拉圭

70

91.2

格鲁吉亚

72.8

南非

62.9

80.6

待判样本

中国

68.5

79.3

罗马尼亚

69.9

96

希腊

77.6

93.8

哥伦比亚

69.3

90.3

统计某高中的30个学生的数学(Math)、物理(Physics)、化学(Chemistry)、语文(Chinese)、历史(History)、英语(English)的成绩,数据如下表(表3-2),试对此数据进行主成分分析。

表3-2某高中30名学生的各科成绩原始数据

Math

Physics

Chemistry

Chinese

History

English

88

66

68

80

89

98

65

81

84

71

48

64

74

90

77

69

85

79

62

58

73

53

67

87

92

45

86

83

59

75

72

56

38

60

57

21

22

91

23

49

24

82

25

26

54

27

28

29

30

MATLAB聚类分析

求解:

对于上述的聚类分析函数,如果单独使用cluster()或者clusterdata()函数,虽然能够得到聚类结果,但不能得到直观的图形表示,因此需要综合使用上述介绍的多个聚类分析函数。

由此编制的MATLAB程序如下:

X=[3.66,2.54,2.21;

3.34,2.27,2.12;

3.29,5.71,1.90;

6.64,1.30,1.90;

3.89,1.31,1.52;

8.65,1.07,3.50;

4.55,6.16,4.25;

4.75,5.60,2.75;

5.89,1.39,1.23;

4.05,3.45,2.51;

12.53,3.28,1.48;

3.02,1.58,1.43;

0.64,1.10,1.04;

3.66,1.32,1.17;

3.17,2.80,1.15;

3.84,1.08,1.01;

3.96,1.36,1.09;

3.42,1.68,1.25;

3.66,0.89,1.10;

1.18,0.78,1.24];

Y=pdist(X);

%计算观测量(样本)之间的距离

Z1=squareform(Y);

%Z1为方阵

Z2=linkage(Y);

%Z2为系统聚类树

H=dendrogram(Z2);

%绘制聚类谱系图(如下图4-1所示)

T=cluster(Z2,10);

%聚类分析

[N,M]=size(X);

%N,M分别为X的行数和列数

NN=1:

1:

N;

%NN为站号序列

TT=[NN'

T]%输出TT矩阵

C=cophenet(Z2,Y)%计算

相关系数

运行结果如下:

(下图4-1为20个样本的聚类冰柱图)

TT=

12

22

36

47

52

69

74

85

97

101

1110

122

138

142

153

162

172

182

192

208

C=0.8997

由上述运行结果可见:

如果消减10个监测点,则余下10个监测点,也就是分为10类。

此时监测点1、2、5、12、14、16、17、18、19为一类;

监测点10单独为一类;

监测点15单独为一类;

监测点7单独为一类;

监测点8单独为一类;

监测点3单独为一类;

监测点4、9为一类;

监测点13、20为一类;

监测点6单独为一类;

监测点11单独为一类。

图4-1聚类冰柱图

4.3.3SPSS聚类分析验证MATLAB分析结果

a.确定因变量与自变量

数据集中各个变量的含义如下表(表4-3)所示:

表4-3数据集变量定义表

b.回归分析的操作步骤

首先拉出菜单Analyze->

Classify->

HierarchicalClustering,然后出现分层聚类分析对话框。

选择Cluster的Cases选项,将Air、Surface_water、Soil添加到Variable中。

选择Method按钮,选择Interval的SquaredEuclideandistance选项。

选择Polts按钮,选中Dendrogram复选框,选择Allclusters和verticalicicleplot,点击Continue。

最终点击OK,完成分析。

c.结果分析

(1)树状聚类图

由图4-2看出,监测点1、2、5、12、14、16、17、18、19为一类;

与MATLAB的结果一致。

图4-2树状聚类图

(2)纵向冰柱图

图4-3冰柱图

(3)聚类进度表

如表4-4看出:

第一步16和19聚在一起,它们的相关系数是0.077;

第二步14和17聚在一起,它们的相关系数为0.098,…,如此类推。

其意义和聚类图相同,只是展示方式为表格形式而已。

表4-4聚类进度表

5.3.2MATLAB判别分析

在命令窗口输入下列命令行:

training=[76,79.5,78,72.1,73.8,71.2,75.3,70.0,72.8,62.9;

99.0,99.0,99.0,95.9,77.7,93.0,94.9,91.2,99.0,80.6]'

;

group=[1,1,1,1,1,2,2,2,2,2]'

sample=[68.5,69.9,77.6,69.3;

79.3,96.0,93.8,90.3]'

class=classify(sample,training,group)

class=[2,2,1,2]'

所以这四个国家分类分别为:

第二类,第二类,第一类,第二类。

5.3.3SPSS判别分析验证MATLAB分析结果

a.确定变量及数据集

数据集中各个变量的含义如下表(表5-2)所示:

表5-2数据集变量定义表

注意:

Category的Values为:

{1,第一类(发达国家)}{2,第二类(发展中国家)}

数据如下表(表5-3)所示。

表5-3数据集表

b.判别分析的操作步骤

(1)读取数据文件,打开DiscriminantAnanlysis对话框,选择分析变量为Born和Adult,分类变量Category。

(2)单击Statistics按钮,展开相应对话框,选择要求输出的统计量FunctionCoefficients:

Fisher’s,即选择Bayes判别法的分析结果。

(3)其它选项默认,然后单击OK按钮,SPSS就开始计算。

c.结果分析

本文采用Bayes判别函数就可以直接进行判别,Bayes判别函数又称为Fisher线性判别函数或分类函数。

就可以求得判别函数,如下表(表5-4)所示。

表5-4判别函数表

于是我们可以写出两种分类的判别函数式如下:

第一类(发达国家):

F1=5.444*Born-0.362*Adult-190.229

第二类(发展中国家):

F2=4.882*Born-0.214*Adult-162.825

将待判别的国家的两个变量值带入上述两个公式中,得到两个函数值,再对两个函数值进行比较,哪个值最大就可以判别该国家属于哪类国家。

计算结果如下:

中国F1=153.9784,F2=154.6218,F1<

F2;

罗马尼亚F1=155.5546,F2=157.8828,F1<

希腊F1=198.2698,F2=195.9450,F1>

哥伦比亚F1=154.3516,F2=156.1734,F1<

F2。

MATLAB主成分分析

利用

中的

命令实现。

具体操作程序如下:

Math=[88,80,76,84,76,89,85,73,84,92,67,98,87,69,88,67,66,70,78,80,89,69,89,77,85,56,67,77,60,88];

Physics=[66,76,76,89,74,70,96,53,96,76,87,83,78,87,67,89,78,87,89,73,87,66,87,68,75,87,78,99,65,67];

Chemistry=[76,76,65,89,48,88,79,67,85,79,45,76,78,75,78,76,80,56,76,57,78,74,67,67,67,77,76,78,68,59];

Chinese=[76,89,81,71,88,78,68,87,74,98,86,70,75,78,72,85,74,78,77,86,45,83,49,88,67,87,76,67,60,77];

History=[76,98,88,48,90,77,62,78,69,73,79,69,69,89,87,77,56,87,60,73,62,78,60,82,56,89,45,88,77,80];

English=[68,65,93,64,77,69,58,85,88,68,88,59,58,92,59,76,38,78,58,76,57,91,89,99,69,54,65,76,49,69];

X=[Math;

Physics;

Chemistry;

Chinese;

History;

English]'

stdr=std(X);

%求各个变量标准差

[n,m]=size(X);

sddata=X./stdr(ones(n,1),:

);

%标准差变换

[p,princ,egenvalue]=princomp(sddata);

%调用主成分分析函数

pp=p(:

1:

2);

%输出前两个主成分系数

sc=princ(:

%输出前两个主成分得分

egenvalue%输出特征根

per=100*egenvalue/sum(egenvalue);

%输出各个主成分贡献率

执行后所得到所要结果,这里是前两个主成分、主成分得分、特征根、各主成分贡献率。

%输出前两个主成分系数

pp=

-0.29130.5826

-0.2836-0.7792

-0.44950.1199

0.47450.1340

0.4982-0.0060

0.3991-0.1451

%输出前两个主成分得分(省略部分)

sc=

-0.12951.5313

1.12000.5402

…………

0.78211.2685

%输出特征根

egenvalue=[2.2543,1.0076,0.9705,0.7834,0.5505,0.4337]'

%输出各个主成分贡献率

per=[37.5717,16.7932,16.1747,13.0574,9.1743,7.2288]'

第一主成分贡献率为37.5717%,第二主成分贡献率为16.7932%,第三主成分贡献率为16.1747%,第四主成分贡献率为13.0574%,前四个主成分累积贡献率达83.597%。

%输出特征根图

N=[1:

6];

%6个主成分

plot(N,egenvalue,'

-r*'

)%输出特征根图(图3-1)

title('

ScreePlot'

),xlabel('

ComponentNum'

),ylabel('

Egenvalue'

图3-1碎石图

%输出主成分荷载图(图3-2)

plot(p1,p2,'

ro'

)%p1,p2分别为前两个主成分系数

ComponentPlot'

Component1'

Component2'

图3-2主成分荷载图

如上图所示,左面三个点是数学、物理、化学,右面的三个点是语文、英语、历史,各个点的坐标就是前两个主成分系数中的数值。

由此可知,第一个主成分主要与属于理科的学科有关,可命名为理科主成分,而第二个主成分主要与属于文科的学科有关,可命名为文科主成分。

有了对主成分的这个认识,我们就可以利用主成分的分析结果,进行进一步分析,例如可以判断不同学生的偏科倾向。

还可以根据前两个主成分得分,用其贡献率加权,即得30个学生各自的总得分:

并可以根据总得分的高低对学生进行综合评价。

3.3.3SPSS主成分分析验证MATLAB分析结果

a.确定变量

数据集中各个变量的含义如下表(表3-3)所示。

表3-3数据集变量定义表

b.主成分分析的操作步骤

数据如上表(表3-2)中30个学生的各科成绩。

首先拉出菜单:

Analysis->

DataReduction->

Factor,进入主对话框;

然后将Math、Physics、Chemistry、Chinese、History、English都选人Variables框中。

再点击Extraction按钮,在Method框中选择Principalcomponents,在Analyze框中选择Correlationmatrix,在Display框中勾选Screeplot,在Extract框中选择默认的抽取特征根大于1的主成分,然后点击Continue。

再点击Rotation按钮打开对话框,勾选Loadingplot(s),其他选项都选择默认值。

然后按Continue。

最终点击OK,完成主成分分析。

c.分析结果的解释

如下表(表3-4)是特征值和方差贡献度表,这里的InitialEigenvalues就是数据相关阵的特征值。

从表3-4中可以看到前四个成分特征值累积占了总方差的83.597%。

后面的特征值的贡献越来越少,由于我们选择了特征值大于1作为主成分的抽取条件,所以这里SPSS抽取了两个主成分,其特征值分别为2.254和1.008。

从特征值的碎石图(图3-3)也可以看出前两个主成分是合理的。

表3-4特征根与方差贡献度

图3-3碎石图

如下表(表3-5)可以看出,第一主成分对各个变量的解释的都很充分,而第二主成分与原始变量相关度要低一些。

与MATLAB的分析结果相符。

表3-5主成分荷载

如图3-4看出,与MATLAB分析结果一致。

图3-4主成分荷载图

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2