计量资料对应分析在SAS和SPSS软件中的实现
2019-05-24李莲莲张晓瑜刁玉涛
高 妍 张 慧 李莲莲 张晓瑜 徐 强△ 刁玉涛△
1.济南大学 山东省医学科学院医学与生命科学学院(250062) 2.山东省医学科学院基础医学研究所
【提 要】 目的 比较对应分析在SAS和SPSS软件中实现方法的异同,探讨在应用SAS软件进行对应分析时,计量资料原始数据应先进行标准化处理的必要性。方法 使用SAS软件和SPSS软件,进行实例分析。结果 计量资料对应分析在SPSS软件运行正常,但在SAS软件上应用时,因变量原始数据的不同量纲,导致SAS软件运行后出现相异或错误结果。结论 SAS软件只有在原始数据进行标准化处理后(有相同量纲或均无量纲),其进行对应分析的结果才最准确,而SPSS软件处理计量资料对应分析时可以不通过外部标化数据,直接输入原始数据。
对应分析(correspondence analysis)也称关联分析、R-Q型因子分析,起初是由法国人Benzecri于1970年提出[1],是一种多元相依变量统计分析技术,通过分析由定性变量构成的交互汇总表来揭示变量间的关系。对应分析在众多领域应用广泛,其原因之一是它可以通过低维图形直观地揭示出同一类变量的各个类别之间的差异,以及不同分类变量各个类别之间的对应关系。在统计软件方面,进行对应分析常用的统计软件有SPSS、SAS、STAT、R、S-PLUS等[2-3]。在进行多元统计对应分析时,越来越多的学者选择SAS软件和SPSS软件进行分析,但在其实际运用上,不同类型资料对应分析在SAS软件和SPSS软件上运行的结果不同,其中计量资料在SAS软件运行应符合相同量纲(或均无量纲)的条件[4],关于这点,在SAS软件上及相关教科书中并无明显的表述,导致不少学者在使用SAS软件进行对应分析时照搬照用,使得其分析的结果及作出的对应分析图不能达到理想的效果。本文通过两个实例,阐述运用SAS软件和SPSS软件进行对应分析其运行结果的解释及差异性及运用SAS软件进行对应分析时,应先对原始数据进行标准化处理的必要性。
对应分析的原理与步骤
对应分析综合了R型和Q型因子分析的优点,将R型和Q型的主成分分析有机结合起来[5],设有R×C列联表,行列分别表示两个不同因素R水平和C水平,表中的频数记为X={xij}。为了将列和行同时进行分析,首先对原列联表数据进行变换:
其中,xi.表示第i行的合计,x.j表示第j列的合计,x..表示总合计。
由此变换产生出矩阵Z=(Zij)RC。再对数据矩阵Z分别进行R型(R=Z’Z)和Q型(Q=ZZ’)因子分析,由此得到两个因素的因子载荷点阵,并将其绘制在同一直角坐标系上,就实现了对应分析[6-7]。
实例与SAS程序及SPSS程序
1.定性资料对应分析
表1包含了从苏格兰北部的开斯纳斯郡(Caithness)的5387名小学生眼睛的颜色与头发的颜色[8],目的是探讨眼睛颜色与头发的颜色之间的对应关系,试做对应分析。
表1 眼睛颜色与头发颜色的对应数量
基于SAS软件(版本9.4)的对应分析程序如下:
data a;
input eye MYM fair red medium dark black;
cards;
darkeye 98 48 403 681 85
Mediumeye 343 84 909 412 26
blueeye 326 38 241 110 3
lighteye 688 116 584 188 4
;
run;
proc corresp out=result;
/*在proc corresp过程中输出一个数据集result,以便后面绘图使用*/
var fair red medium dark black;
/*var语句分别给出列变量*/
id eye;
/*id语句给出行变量*/
run;
proc plot data=result;
/*绘制对应分析图,用前面输出的数据集result中两个变量dim1和dim2绘图;确定坐标轴相应取值范围*/
where eye ne "";
plot dim2*dim1="*" $ eye
/box vaxis=-.3 to.3 by.1
haxis=-1 to 1 by.2;
run;
SAS软件运行结果及对应分析图见表2及图1。
表2 实例1惯量和χ2值分解表
图1 实例1对应分析图
基于SPSS软件(版本22)的对应分析步骤如下:
Analyze→Data Reduction→Correspondence Analysis
Row框:hair
Column框:eye
OK
SPSS软件运行结果及对应分析图见表3及图2。
如SAS软件和SPSS软件运行结果可见,表2和表3中总惯量的86.56%可由第一维来解释,前二维解释了高达99.63%的总惯量,以第一维和第二维分别作为横轴和纵轴建立直角坐标系得到对应分析图,图1和图2的对应分析图虽然各变量位置有所差异,但两图均可看出出头发深色和黑色与眼睛的深色相对应,头发的金色和红色与眼睛的蓝色和浅色相对应,头发的棕色和眼睛的棕色相对应。定性资料在SAS软件和SPSS软件运行结果是相符合的。
表3 实例1结果汇总表
图2 实例1对应分析图
2.计量资料对应分析
表4共记录了全国29个省、市、自治区当年的城市市政工程建设情况[6],具体有如下6个指标:road(年末实有道路长度),area(年末实有道路面积),bridge(城市桥梁数),under(城市下水道长度),water(城市污水处理能力),lamp(城市路灯数)。现希望考察各省市城市设施的建设情况差异,特别是各地区在这6个指标上分别存在哪些优势和不足,试通过对应分析解决上述问题。
基于SAS软件(版本9.4)的对应分析程序如下:
data municipal_construction;
input region$ road area bridge under water lamp;
label road=”道路长度” area=”道路面积” bridge=”桥梁数” under=”下水道长度” water=”污水处理能力” lamp=”路灯数”;
/*label语句给各指标注释*/
datalines;
1 13409.00 17129.50 2389.00 14903.46 176.58 535823.00
2 10066.00 12283.17 4417.00 10382.05 366.76 380724.00
⋮
28 1601.00 1464.30 305.001593.44 0.9035897.00
29 760.00 837.09 76.00 460.00 7.89 23507.00
;
run;
表4 各地区市政建设情况
proc corresp data=municipal_construction outc=ccc;
/*在proc corresp过程中输出一个数据集ccc,以便后面绘图使用*/
var road area bridge under water lamp;
/*var语句分别给出列变量*/
id region;
/*id语句给出行变量*/
run;
data ccc;
set ccc;
x=dim1;
y=dim2;
xsys =′2′;
ysys =′2′;
text =region;
size =2;
label x=′dimension 1′
y=′dimension 2′;
keep x y text xsys ysys size;
run;
proc gplot data=ccc;
symbol1 v=#;
axis1 length=6 in order=-1.0 to 0.6 by 0.2;
axis2 length=6 in order=-1.0 to 0.6 by 0.2;
plot y*x=1/ annotate=ccc frame haxis=axis1
/*绘制对应分析图,用前面输出的数据集ccc中两个变量dim1和dim2绘图;确定坐标轴相应取值范围*/
vaxis=axis2 href=0 vref=0;
run;
SAS软件运行结果及对应分析图见表5及图3。
表5 实例2惯量和χ2值分解表
图3 实例2对应分析图
通过SAS软件作出的对应分析图3可以看出,大部分地区都聚集在“路灯数”指标处,因此该图不能反映行变量与列变量的关系,此图有明显的错误。
考虑该实例的各变量具有不同的量纲,在SAS软件分析时并没有对计量资料原始数据进行标准化的过程,因此在SAS软件进行对应分析前,先对原始数据进行外部标准化处理,即每一变量值与其平均值之差除以该变量的标准差,得到标准化后的数据。
对标准化后的数据进行上述SAS程序,SAS软件运行结果及对应分析图见表6及图4。
表6 实例2标化后惯量和χ2值分解表
图4 实例2标化后对应分析图
基于SPSS软件(版本22)的对应分析步骤如下:
Analyze→Data Reduction→Correspondence Analysis
Row框:road
Column框:area
Distance Measure:·Euclidean
Standardization Method:·Column Totals are Equalized and Column Means Removed
对话框选操作中选入area和road,将它们的取值范围定为1~2只是为了能进行语法窗口的操作,并无实际意义。操作完成后生成的语法程序,将其中的TABLE语句TABLE = road(1 2) BY area(1 2)更改为TABLE = all(29 6),表明数据是以29行、6列交叉表的形式出现,然后运行程序。
SPSS软件运行结果及对应分析图见表7及图5。
从SAS软件和SPSS软件运行后得到的对应分析图,如图4和图5可见,该6个指标并未完全散开,其中道路长度、道路面积、下水道长度和路灯数基本重叠,显然从市政工程建设方面考虑,这4项指标是紧密相关的。各地区散点也未完全分开,宁夏、新疆、吉林、云南等地区聚集在一起说明其城市设施建设是相接近的。另外,浙江、江苏与指标“桥梁数”最接近,可以分析出江苏省和浙江省是河湖大省,其桥梁建设较多,桥梁设施完善。山东、上海、广东等地区散点相距较远,说明这些地区城市建设水平相差较大。
表7 实例2结果汇总表
图5 实例2对应分析图
讨论
对应分析是以定性资料发展起来的一种多元统计分析技术,通过低维图形的表示来揭示变量间的对应关系。在对应分析统计软件的应用方面,SAS和SPSS软件有其各自的优点和不足,对于定性资料对应分析,SAS软件和SPSS软件均可直接利用原始数据运行,且二者运行结果的解释具有一致性;SAS软件在对应分析应用上的优点是程序编辑操作灵活、方便,运行结果迅速,但其缺点是程序语句必须正确且规范,否则将无法运行或得不出正确的结果,而且对于计量资料对应分析,SAS软件未有对原始数据标化的过程,需提前对原始数据进行外部标准化处理, 其方法有标准化
法、均值化法和标准差化法等[10]。SPSS软件在对应分析应用上的优点是操作简单且清晰直观,对于计量资料的对应分析,与SAS软件相比,SPSS软件可通过基于均数的对应分析,不需要通过外部标化原始数据,但其缺点是步骤较多,编程能力较弱。