1、实验三 我国各地区城镇居民消费性支出的主成分分析和聚类分析(王学民 编写)一、实验目的1.掌握如何使用SAS软件来进行主成分分析和聚类分析;2.看懂和理解SAS输出的结果,并学会以此来作出分析;3.掌握对实际数据如何来进行主成分分析;4.对同一组数据使用五种系统聚类方法,学会对各种聚类效果的比较,获取重要经验;5.掌握使用主成分进行聚类二、实验内容数据集sasuser.examp633中含有1999年全国31个省、直辖市和自治区的城镇居民家庭平均每人全年消费性支出的八个主要变量数据。对这些数据进行主成分分析,可将这31个地区的前两个主成分得分标示于平面坐标系内,对各地区作直观的比较分析。对同样
2、的数据使用五种系统聚类方法聚类,并对聚类效果作比较。最后,对主成分的图形聚类和正规聚类的效果进行比较。实验1进行主成分分析,根据前两个主成分得分所作的散点图对31个地区进行比较分析。实验2分别使用最长距离法、中间距离法、两种类平均法和离差平方和法进行聚类分析,并比较其聚类效果。实验3主成分聚类,并与上述正规的聚类方法进行比较三、实验要求1.用SAS软件的交互式数据分析菜单系统完成主成分分析;2.完成五种系统聚类方法,比较其聚类效果;3.根据前两个主成分得分的散点图作直观的聚类,并与上述正规的聚类方法进行比较。四、实验指导1.进行主成分分析在inshigt中打开数据集sasuser.examp6
3、33,见图1。选菜单过程如下:在图1中选分析多元(Y X)在变量框中选 x1,x2,x3,x4,x5,x6,x7,x8 (见图2)Y选输出选主分量分析,主分量选项(见图3)在图4中作图中的选择(主成分个数缺省时为“自动”选项,此时只输出特征值大于1的主成分)确定确定确定图1图2图3图4得到如图5、图6所示的结果:图5图6从图5可以看出,前两个和前三个主成分的累计贡献率分别达到80.6和87.8,第一主成分在所有变量(除在上的载荷稍偏小外)上都有近似相等的正载荷,反映了综合消费性支出的水平,因此第一主成分可称为综合消费性支出成分。第二主成分在变量上有很高的正载荷,在变量上有中等的正载荷,而在其余
4、变量上有负载荷或很小的正载荷。可以认为这个主成分度量了受地区气候影响的消费性支出(主要是衣着,其次是医疗保健可从表1计算出医疗保健在消费性总支出中占的比率,然后进行由大到小的排序,各地区的顺序依次为:宁夏、黑龙江、青海、河北、辽宁、北京、浙江、陕西、甘肃、山西、吉林、河南、新疆、内蒙古、天津、云南、山东、广东、湖北、四川、重庆、湖南、海南、江苏、上海、西藏、贵州、广西、安徽、江西和福建,大致由寒冷的北方地区排到温暖的南方地区。这是由于气候的寒冷易导致医疗保健费用的增加,因此,可以认为除衣着外医疗保健也是受地区气候影响的变量。)在所有消费性支出中占的比重(也可理解为一种消费倾向),第二主成分可称
5、为消费倾向成分。第三主成分很难给出明显的解释,因此我们只取前面两个主成分。在图1中选分析散点图(Y X)选 PCR1X ;PCR2Y ;region标签变量 (见图7)确定 随即出现如图8所示的散点图,接下来我们对该图进行设置、调整,使之符合我们的要求。图7图8在图9的数据窗口中点击左上角的“31”,以使所有观测都选中将鼠标移至观测号中,点击右键,选在图中加标签在图8中点击左下角,出现上托菜单刻度作图10中的选择确定作图11中的选择确定调整好散点图:拉大图外围方框;图8 中点击标记大小 ,选择6号字;下拉横坐标,左拉纵坐标图9图10图11图12随即得到图12,该图是关于第一和第二主成分得分的散
6、点图,该图对各地区的综合消费性支出和受地区气候影响的消费性支出占的比重有较直观的描述。从图中可以看出,上海、广东和北京在最右边,城镇居民综合消费性支出是最高的;其次是浙江和天津;江西在散点图的最左边,表明综合消费性支出是最低的;北京和西藏在散点图的最上边,说明受地区气候影响的消费性支出占的比重最高;广东在最底部,表明受地区气候影响的消费性支出占的比重最低。2.用五种系统聚类法聚类,并比较其效果分别使用最长距离法、中间距离法、两种类平均法和离差平方和法进行聚类分析。为此编制如下的SAS程序:proc cluster data=sasuser.examp633 method=com std; id
7、 region;proc tree horizontal; id region;proc cluster data=sasuser.examp633 method=med std; id region;proc tree horizontal; id region;proc cluster data=sasuser.examp633 method=ave std; id region;proc tree horizontal; id region;proc cluster data=sasuser.examp633 method=ave nosquare std; id region;proc
8、 tree horizontal; id region;proc cluster data=sasuser.examp633 method=war std; id region;proc tree horizontal; id region;run;程序说明:“proc cluster”是一个聚类分析过程;“data=sasuser.examp633”规定过程分析的是sasuser逻辑库中的examp633数据集;“method=com” 规定了采用的系统聚类方法是最长距离法(“method= med”是采用中间距离法;“method=ave”是采用类平均法,缺省时是类之间的距离为均方距离,如使用选项“nosquare”则类之间的距离为平均距离;“method= war”是采用离差平方和法);选项“std” 规定了在聚类之前须先对各变量数据作标准化变换,缺省时是直接对原始数据进行聚类,而不作事先的标准化处理。聚类树形图的输出:图13 最长距离法图14 中间距离法图15 类平均法(均方距离)图16 类平均法(平均距离)图17 离差平方和法3.主成分聚类,并与上述正规的聚类方法进行比较 从图12中直观地进行聚类,将其结果与上述正规的聚类方法进行比较。10