系统聚类

学习聚类分析,一上来就是样本间的距离:Minkowski距离、兰氏距离、马氏距离、斜交空间距离,还有相似系数,接着一大堆分析方法:最短距离法(SIN),最长距离法(COM)、中间距离法(MED)、重心法(CEN)、类平均法(AVE)、可变类平均法(FLE)、利差平方和法(WARD)、密度估计法(DEN)等等。

 

搞清楚这些概念太不容易了,接着照葫芦画瓢:作数据转换(非必须),计算距离得距离矩阵,按需要合并两类成新的一类,计算新类与其它距离得新的距离矩阵然后继续合并直至只有一类,画谱系聚类图,决定分类的个数及类成员。

 

在SPSS软件中,菜单Analyze-Classify-Hierarchical Cluster下面的选项包括了上面全部内容,依据需作相应的设置。SAS中PROC CLUSTER语句也可以作相应的操作。下面例子更形象说明上述操作:

数据"小康指数"为SPSS数据,数据来源:《多元统计方法与应用》

下面试图用SAS完成类似的工作。

proc cluster data=sample method=ward pseudo outtree=tree;/*作ward法系统聚类*/
   id dq;
   var X1-X6;
RUN;
proc tree horizontal;/*画相应的树状图*/
run;

需要注意的是次序序列和分层数据不适合聚类;而且对于不同单位数据的需要作相应处理;另外变异性大的数据对聚类影响会更大,通常需要标准化处理。 PROC ACECLUS语句可以解决这类问题。假设对上面的数据作相应的处理,可以写作:

proc aceclus data=sample out=sample2 p=.05 outstat=score;

     var X1-X6;

run;

你可能感兴趣的:(工作,面试,tree)