
第四讲聚类分析..doc
13页聚类分析 - 13 -第三讲 聚类分析第一节 什么是聚类1.1 聚类就是把所有的观察对象(cases)分类:使性质相近的对象分在同一个类,性质差异较大的对象分在不同的类这种聚类也叫Q型聚类本讲内容主要是介绍这种类型的聚类1.2 聚类过程中,“性质”由一组变量(variables)代表,把它用一个p维向量表示:1.3 聚类过程中,两个观察对象和性质的“差异”程度由它们之间的距离dij来度量1.4 还有另一种聚类,它是把变量(variables)作为分类对象 这种聚类用在变量数目比较多,而且相关性比较强的情形目的是将性质相近的变量聚为同一个类,从中找出代表变量这种聚类叫R型聚类本讲在最后一节简要介绍这种聚类方法及应用第二节 距离与相似系数2.1 点(观察值,case)到点的距离设有两个p维观察值(点):在聚类分析中,它们之间的距离有以下的不同度量方式: 1.欧氏距离(Euclidian Distance) 2.欧氏距离平方(Squared Euclidian Distance)这是SPSS系统默认的距离。
3.闵可夫斯基距离(Minkowski)其中参数q为用户选项 4.切比雪夫距离(Chebyshev) 5.布洛克距离(Block) 6.自定义距离(Customized)其中参数q、r为用户选项 以上距离越小,表示个体和的性质越相近2.2 相似系数 1.皮尔逊相似系数(Pearson)其中的: 2.夹角余弦(Cosine) 相似系数值越大,表示观察对象性质越相近2.3 类(group)与类之间的距离 类指观察值的集合两个类之间的距离,是用这两个类的特殊点之间的距离来定义设有两个类:Ga和Gb,它们之间的距离用D(a, b)表示则有以下方法表示这两个类之间的距离: 1.最短法 2.最长法 3.重心法称为类Ga和Gb的重心,其中的na和nb分别是Ga和Gb中包含的观察值的个数这时4.类平均法5.离差平方和法首先定义类Gs的直径如下:记Ga的直径为Da,Gb的直径为Db,Ga+b=GaÈGb的直径为Da+b则:第三节 数据的中心化与标准化 在聚类的时候,由于表示聚类特征的变量往往具有不同的量纲,因此聚类前经常要将其数据标准化标准化后的数据是无量纲的。
SPSS系统默认无标准化以下假设变量X的观察值为:X1,X2,…,Xn;它的均值和标准差分别记为和S3.1 中心化中心化以后的数据均值为03.2 正规化易见,正规化以后的数据最小值为03.3 标准化1.标准差标准化(z-score)标准差标准化后的数据均值为0,标准差为12.极差标准化式中的R为观察值的极差极差标准化后的数据均值为0,极差为13.极差正规化变换后的数据最小值为0,极差为1第四节 系统聚类法(Hierarchical Clustering)4.1 系统聚类法的算法 1.取每个观察值为一个类; 2.将性质最近的两个类合并为一个类,类的数目减1; 3.如类的数目³2,转2); 4.结束聚类过程4.2 系统聚类法举例 设有变量X 的5个观察值:1,2,4.5,6,8试用系统聚类法聚类观察值采用Euclidean距离,类间距离采用最短法第一步:每个观察值作为一类,共分成5类如下:G1={1},G2={2},G3={4.5},G4={6},G5={8}计算它们的距离矩阵M1:G1G2G3G4G5G10G21#0G33.52.50G4541.50G5763.52 0合并距离最小的两个类G1和G2,得G6=G1ÈG2。
重新计算距离矩阵M2:G3G4G5G6G30G41.5#0G53.520G62.5460合并距离最小的两个类G3和G4,得G7=G3ÈG4矩阵M3:G5G6G7G50G660G72#2.50合并G5和G7,得G8=G5ÈG7矩阵M4:G6G8G60G82.5#0最后G6和G9合并成G9聚类过程结束4.3 聚类谱系图(Dendrogram) 略第五节 系统聚类的不同方法介绍系统聚类由于使用的类间距离不同,产生了不同的聚类方法主要方法有: 1.组间平均距离法(Between-Groups Linkage)使用类平均法计算类间距离这是SPSS系统默认的方法 2.最短距离法(Nearest Neighbor)使用最短法计算类间距离 3.最长距离法(Furthest Neighbor)使用最长法计算类间距离 4.重心法(Centroid Clustering)使用重心法计算类间距离 5.离差平方和法(Ward’s Mathod)使用离差平方和法计算类间距离第六节 系统聚类举例例 数据data06,将所列10个西部省市自治区按五项经济指标:国内生产总值(gdp)、工业总产值(industry)、农林牧渔总产值(agri)、全社会固定资产投资(gdinvest)和全社会最终消费(consume)用系统聚类法分为三类,距离采用Euclidian distance,数据作z-score标准化。
并从平均值角度说明这三类地区的区别在Hierarchical Cluster Analysis对话框中,将上述五个变量输入Variable(s),点击Statistics ,在该对话框的Single solution中键入3,返回;点击Save ,在该对话框的Single solution中键入3,返回;点击Method ,在该对话框的Measure中Interval下拉菜单中选择Euclidian Distance,再在Transform之Standardize的下拉菜单中选择z-scoreOK ,得:这是一张聚类过程表,其中的Stage表示步骤,Cluster Combine表示被合并的类,例如第1步是把8号观察值与9号观察值合并,合并后的新类用Cluster 1即8命名Coefficients则为被合并的两个类之间的距离或相似系数值Stage Cluster First Appears则表示被合并的两个类是否原始类,如果是,则记为0;如果不是,则记它上一次被合并的步骤号,例如Stage 3由第5类与第8类合并为新8类,在Stage Cluster First Appears中Cluster 1为0,表示第5类是原始类,Cluster 2为1,表示第8类不是原始类,而是在Stage 1中生成的新类。
最后的Next Stage则表示这一步合并得的新类,下一次在哪一步出现,例如Stage 3合并得的新类5,下一次将在Stage 8出现这是聚类结果,由于操作时选择了Save,所以在数据文件中系统已经自动添加了一个结果变量Clu3_1,其中记录了分类结果如果到此为止,上述分类难有什么实际用途还必须表示这三个类的差异之处为此,运用Means,在对话框中,把5个聚类变量输入Dependent List,把Clu3_1输入Independent List,点击Options ,在其对话框的Cell Statistics中保留4个统计量:Mean、Number of Cases、Minimum、Maximum返回,OK ,得输出表格Report,读者试解释这三类地区都代表什么发展水平第七节 R型聚类介绍7.1 R型聚类与代表性变量的选择 1.R型聚类即对变量聚类在变量较多且变量间的相关性较强时,可以用R型聚类法找出代表性变量,以减少变量个数,达到降维的目的 2.代表性变量及其选择 R型聚类把变量聚为几个类,同一类变量之间有较强的相关性,因此可以从中选择一个变量作为代表以下介绍代表性变量的选择方法:假设变量X1,X2,X3,X4构成一个类,为选择代表性变量,首先计算变量Xi和Xj的相关系数:rij,i≠j,i, j=1,2,3,4。
接着,对每个变量Xj按以下公式计算:其中mj是Xj所在类的变量个数,此处mj=4选最大者对应的变量为代表性变量7.2 R型聚类举例例 数据data10,该数据文件列举我国30个省、市、自治区的11个经济发展指标值,这些指标具有较强的相关性试用R型聚类将这些指标分为3类,并对每一类变量找出代表性变量命令Classify \ Hierarchical,打开Hierarchical Cluster Analysis对话框,将变量X1至X11全部输入Variable(s),在Cluster一栏中选择⊙Variables,打开Statistics,在Single solution中键入3 ;返回,打开Method,在Measure中选择Pearson correlation,并在Standardize中选择z-scores返回,OK输出文件关于变量分类结果为:可见,变量分类如下:第一类:X1,X2,X3;第二类:X4,X5,X6,X7,X8,X10,X11;第三类:X9以第一类为例,求代表性变量首先计算变量X1,X2,X3之间的相关系数为此,选择命令Correlate \ Bivariate。
得相关系数如下:对于变量X1,有:相应地,X2和X3有:由于的值最大,故取X2为第一组变量的代表性变量其他两类的代表性变量由读者作为练习求出第八节 快速聚类法简介快速聚类(k-means cluster)是一种基于迭代(iteration)算法的聚类方法,在数据量不大的情况下,不失为一种有效的方法 使用快速聚类,首先要确定凝聚中心,有几个凝聚中心,就得到几个类凝聚中心有两种确定法: 1.由系统根据数据情况和指定的类数,自动确定; 2.人工输入 在产生了凝聚中心后,计算每个点(观察值)到各凝聚中心的距离,并按照距离最近原则归类例 数据“物院学生成绩”用快速聚类法将学生按所示五科成绩分为3类将五门学科名称(变量)键入Variables,并将Number of Clusters的系统默认值2改变为3点击Save ,全选对话项目返回,点击OK 得输出文件这是系统根据观察数据估算出的初始聚类中心,由于要分为三个类,故有三个中心经过(三步)迭代计算后,得到最终聚类中心:然后,按距离最近法则,将所有观察值分到这三个中心代表的类结果为:这里只给出了每一类的观察值个数,没有具体个体类属结果,要知道具体个体属于哪一类,回到数据文件。
在数据文件中新生成了两列数据,其中的一列是QCL_1,显示每个观察值属于哪一类;另一列是QCL_2,显示每个观察值到所在类中心的距离进一步,使用Mea。












