《《数据分析实验》PPT课件》由会员分享,可在线阅读,更多相关《《数据分析实验》PPT课件(52页珍藏版)》请在金锄头文库上搜索。
1、数据分析实验3理学院数学系韩开山一、主成分分析二、判别分析三、聚类分析PROC PRINCOMP可对输入资料文件做主成分分析输入资料文件可以是原始数据、相关系数矩阵或样本协方差矩阵等输出包括相关矩阵或协方差矩阵、特征值、特征向量及标准化的主成分值等PROC PRINCOMPProc princomp 选项串; var 变量名称串; partial 变量名称串; freq 变量名称串; weight 变量名称串; by 变量名称串;PROC PRINCOMPProc princomp options; data=sas data set:指出要分析的sas数据集名称。这个数据集可以是原始观测值的
2、sas数据集,也可以是相关矩阵(typecorr)或协方差矩阵(typecov)。若省略数据集选项,则自动使用最新建立的sas数据集。PROC PRINCOMPProc princomp options; outsas data set:命名一个输出的sas数据集,其中包含原始数据以及各主成分的得分(即各主成分的观测值)。 outstatsas data set:命名一个包含各变量的均值、标准差、相关矩阵或协方差矩阵、特征值和特征向量的输出sas数据集。PROC PRINCOMPProc princomp options; covariance(或COV):要求从协方差矩阵出发作主成分分析。若
3、省略此选项,则从相关矩阵出发进行分析。除非各变量的度量单位是可比较的或已经过某种方式的标准化,否则不宜使用此选项,应从相关矩阵出发作主成分分析。 Nn:指定要计算的主成分个数“n”。其默认值为参与分析的变量个数。PROC PRINCOMPProc princomp options; prefixname:规定各主成分的名称的前缀。省略此句则sas系统自动赋予各主成分名称分别为prin1,prin2,。若“nameA”,则各主成分名称分别为A1,A2,。前缀的字符个数加上后面数字位数应不超过8个字符。导入数据shuruPROC IMPORT OUT= DATAFILE= E:韩开山带课文件数据分
4、析试验 DBMS=EXCEL2000 REPLACE; GETNAMES=YES;RUN;1.2 程序proc princomp data=shuru out=defen;var x1-x9;run; proc sort data=defen; by prin1; run; proc print data=defen; run;1.3 结果分析1991年全国各省、区、市城镇居民月平均收入情况见下表,变量含义如下:X1-人均生活费收入(元/人);X2-人均全民所有制职工工资(元/人);X3-人均来源于全民标准工资(元/人);X4-人均集体所有制工资(元/人);X5-人均集体职工标准工资(元/人)
5、;X6-人均各种奖金及超额工资(元/人);X7-人均各种津贴(元/人);X8-职工人均从工作单位得到的其他收入(元/人);X9-个体劳动者收入(元/人)。二、判别分析PROC DISCRIM options; CLASS variable; VAR variables; PRIORS probabilities; TESTCLASS variable;PROC DISCRIMPROC DISCRIM options; 此语句中,“options”部分可包含下列内容: 1)待分析的数据集选择: DATASAS data set:指定用以建立判别函数的SAS数据集(即训练样本数据集)。 TESTD
6、ATA SAS data set:指定用以检验判别准则的SAS数据集名称。除分类变量外,该数据集中的变量应和训练样本数据集中的变量一致。PROC DISCRIMPROC DISCRIM options; 此语句中,“options”部分可包含下列内容: 2)输出数据集的选择: OUTSTATSAS data set:定义一个输出SAS数据集名称,该数据集包括原训练样本集中各变量的均值、标准差及相关系数等。若METHODMORMAL被使用,该数据集中还包括判别函数的系数; OUTSAS data set:命名一个输出SAS数据集,其中包括训练样本集的数据及变量、后验概率以及回判结果;PROC D
7、ISCRIMPROC DISCRIM options; 此语句中,“options”部分可包含下列内容: 2)输出数据集的选择: OUTCROSSSAS data set:定义一个输出的SAS数据集,其中包括训练样本数据及变量、后验概率以及由交叉确认法所得的回判结果等; TESTOUT=SAS data set:定义一个输出的SAS数据集,其中包括检验数据集中的变量和数据、后验概率以及利用所建立的判别准测对检验数据集的判别结果。此项当“options”中有“TESTDATA SAS data set”时运用。PROC DISCRIMPROC DISCRIM options; 此语句中,“opt
8、ions”部分可包含下列内容: 3)判别分析方法的选择: METHODNORMAL(或NPAR):指出建立判别函数的方法。当“METHODNORMAL”被指定,则在各总体为正态分布的假定下通过利用训练样本估计各总体均值向量和协方差矩阵,并视各总体的协方差矩阵是否相等而分别建立线性及二次判别函数;当指定“METHOD NPAR”,则使用非参数方法建立判别函数。前者是SAS系统默认的方法。PROC DISCRIMPROC DISCRIM options; 此语句中,“options”部分可包含下列内容: 3)判别分析方法的选择: POOLYES(或NO,TEST):在选择“METHODNORMAL
9、”的前提下,“POOLYES”意味着假定各总体的协方差矩阵相等,而用各训练样本的样本协方差矩阵联合估计公共的协方差矩阵,这时建立的判别函数是线性的;若假定“ POOLNO”,则意味着假定各总体的协方差矩阵不等而建立二次判别函数; “ POOLTEST”即要求首先利用修正的Bartlett似然比方法检验各总体的协方差矩阵是否相等,若检验结果在由语句“SLPOOLp”所指定的显著水平p下显著,则建立二次判别函数,否则利用联合协方差矩阵估计建立线性判别函数。对线性判别函数,输出结果中才给出判别函数的系数。 PROC DISCRIMPROC DISCRIM options; 此语句中,“options
10、”部分可包含下列内容: 3)判别分析方法的选择: SLPOOLp:指定检验协方差矩阵是否相等的显著水平。只有当选择“POOLTEST”时,才可出现此语句,若省去此语句,则SAS系统默认p。PROC DISCRIMPROC DISCRIM options; 此语句中,“options”部分可包含下列内容: 4)回判结果输出选择: LIST:打印出每个样品的回判结果; LISTERR:仅打印出回判中判错的样本信息; NOCLASSIFY:不需要对训练样本数据作回判分析。PROC DISCRIMPROC DISCRIM options; 此语句中,“options”部分可包含下列内容: 5)交叉确认
11、法回判结果的输出选择: 当下列语句出现时,则交叉确认法被使用对训练样本作出回判分析。 CROSSVALIDATE:要求对训练样本数据集进行交叉确认回判分析; CROSSLISTERR:仅打印出使用交叉确认法判别而判错的样本信息; CROSSLIST:打印出每个样品的交叉确认法回判分析结果。PROC DISCRIMPROC DISCRIM options; 此语句中,“options”部分可包含下列内容: 6)检验数据集判别结果的输出选择: TESTLIST:列出对检验数据集的判别结果; TESTLISTERR:仅列出对检验数据集中判错的样品信息。 PROC DISCRIMPROC DISCRI
12、M options; 此语句中,“options”部分可包含下列内容: 7)控制打印结果 WCORR(WCOV):打印各总体的训练样本相关(协方差)矩阵; PCORR(PCOV):打印由各总体的样本相关矩阵所得的联合相关(协方差)矩阵估计; ALL:打印出所有的相关结果; SHORT:只打印一些主要结果。PROC DISCRIMCLASS variable; 其中的“variable”即描述各类别的变量名称。该变量可以是数值化变量、也可以是非数值变量。该语句是进行判别分析所必需的语句。VAR variable; 其中的“variable”即列出参与分析的描述各种样品特征的变量名称,省略时即数据
13、集中所有的数值变量。 PROC DISCRIMPRIORS probabilities; 此语句的功能即指出总体的先验概率分布。其中的“probabilities”应是下列三种选择之一: EQUAL:即各总体的先验概率相等; PROPORTIONAL(或PROP):即各总体的先验概率与各总体的训练样本容量成比例。 PROC DISCRIMPRIORS probabilities; 具体指定各总体的先验概率: a.若描述各总体类别的变量(即“CLASS variable”中的变量)是非数值变量,则在各类取值后给出先验概率并用等号连起来。 例:描述各总体类别的变量“GRADE”取A,B,C,D四个
14、值,各总体先验概率分布为, ,和,则 PRIORS A0.1 B0.3 C0.5 D; PROC DISCRIMPRIORS probabilities; 具体指定各总体的先验概率: b.若描述各总体类别的变量是数值化变量或是小写字母,这时要将这些值用“”引起来写在上式等号前。 注:1 若指定的先验概率之和非1,SAS会自动用其和除各值而是概率之和为1; 2 “EQUAL”是SAS系统默认的形式。PROC DISCRIMTESTCLASS variable; 其中“variable”是描述检验数据集中的各总体类别的变量名,它可以和原训练样本数据集中类别变量相同,也可以不同,但二者必须是同类型的
15、(即同为数值或非数值变量)。若变量采用格式化输入,则二者的输入格式也应相同。程序方法1:先改变shuru 数据的结构,把待判的数据去掉,再引入数据data shouru1;input diqu $ x1-x9;cards;广东 西藏 175.93 163.8 57.89 4.22 3.37 17.81 82.32 15.7 0;run;proc discrim data=shouru testdata=shouru1 method=normal list all crosslist testlist;class leixing;var x1-x8;run;回代法结果交叉确认法结果广东判入第三类
16、,西藏判入第一类。程序proc discrim data=shouru testdata=shouru1 method=normal list all crosslist crossvalidate testlist;class leixing;var x1-x9; priors prop;run;回代法回代法交叉确认法交叉确认法三、聚类分析proc cluster data=yjshr method=sin outtree=y1 ;/*最短距离法*/var x1-x9;run;proc tree data=y1 nclusters=3 out=z1;run;proc print data=z1;run;proc cluster data=yjshr method=com outtree=y2 ;/*最长距离法*/var x1-x9;run;proc tree data=y2 nclusters=3 out=z2;run;proc print data=z2;run;proc cluster data=yjshr method=ave outtree=y3 ;/*类平均距离法*/var