如何用SAS软件正确分析生物医学科研资料XVII.R×2列联表与2×C列联表资料的统计分析与SAS实现
2012-04-12关雪胡良平王琪
关雪,胡良平,王琪
·讲座·
如何用SAS软件正确分析生物医学科研资料XVII.R×2列联表与2×C列联表资料的统计分析与SAS实现
关雪,胡良平,王琪
编者按
生物统计学是生物学领域科学研究和实际工作中必不可少的工具,在分子生物学迅速发展的今天,生物统计学更显示出了它的重要性。实验设计与数据统计分析是现代生物学的基石,是生物学研究者检验假说、寻找模式、建立生物学理论的有利工具,也是生物学研究者探索微观和宏观生物世界的必备基础知识。对于每天甚至是每时每刻涌现的大量的、以天文数字计量的分子遗传数据,必须借助统计学知识加以分析处理,才能从中获得有意义的信息。“生物多样性数据分析”是开展生物多样性研究的一个重要方面,数据分析能力的高低极大地影响着我们对各种生态学现象认识的深度和广度。现在,电子计算机的普及使得生物统计分析过程大大简化,生物统计分析软件包的普及将生物统计学从统计学家的书本里解放了出来,简化了生物统计分析过程,使之成为生物学研究者的常用工具。本刊特邀军事医学科学院生物医学统计学咨询中心主任胡良平教授,以“如何用 SAS 软件正确分析生物医学科研资料”为题,撰写系列统计学讲座,希望该系列讲座能对生物医学科研工作者有所帮助。
R × 2 列联表资料是指原因变量有 R 个取值,结果变量为二值变量的列联表资料,以 R 行 2 列的形式表示;2 × C 列联表资料是指原因变量为二值变量,结果变量有 C个取值的列联表资料,以 2 行 C 列的形式表示。这两种类型列联表资料统计分析方法的选择取决于原因变量或结果变量是否为有序变量以及分析目的。当它们是多值有序变量,且分析目的为考察某一列或某一行上的频率变化是否呈直线趋势,就需要用线性趋势检验进行分析[1]。本文重在说明这两种类型列联表资料的线性趋势检验方法,同时给出相应的 SAS 程序和输出结果的具体解释。
1 R × 2 列联表资料的线性趋势检验及 SAS 实现
R × 2 列联表的标准型见表 1[1]。当原因变量为多值名义变量时,只能选择一般χ2检验或 Fisher 精确检验,以分析原因变量不同水平间的频数分布是否相同;若原因变量是多值有序变量,分析目的仍然是原因变量不同水平间的频数分布是否相同,仍然选择一般χ2检验或 Fisher 精确检验;如果要分析第一列(或第二列)上的频率变化是否呈线性趋势,则要选用线性趋势检验。
R × 2 列联表资料线性趋势检验也称为 Cochran-Armitage 趋势检验,其目的就是说明某一事件的发生率是否随着原因变量不同水平的变化而呈现线性趋势[2]。检验的原假设和备择假设分别为:
H0:两个变量之间不存在线性趋势;
H1:两个变量之间存在线性趋势。
【例1】某医院统计了某段时间内血液病患者感染真菌的情况,不同年龄患者发生真菌感染的结果见表 2。请分析患者年龄与真菌感染发生率之间是否存在线性趋势。
分析与解答:这是一个原因变量为有序变量的 3 × 2 列联表资料,分析目的是患者年龄与真菌感染发生率之间是否存在线性趋势,因此应进行线性趋势检验。SAS 软件中的FREQ 过程和 MULTTEST 过程都可以实现 R × 2 列联表资料的线性趋势检验,以下介绍如何用 FREQ 过程进行线性趋势检验。SAS 程序如下,设程序名为 li1.sas。
表1 原因变量为有序变量的 R × 2 列联表资料的标准型
表2 不同年龄血液病患者真菌感染发生情况
程序说明:程序中第一步为建立名为 a1 的数据集,A 代表年龄分级,由 1 到 3 分别表示年龄的 3 个等级;B 代表真菌感染发生情况,1 和 2 分别表示感染和未感染;f 表示各单元格内的频数。
程序中第二步为过程步,调用 FREQ 过程进行线性趋势检验。Tables 语句用于生成二维列联表,“/”后的选项trend 指定进行线性趋势检验,需要特别说明的是 scores 选项,SAS 中提供的打分方法有 table,rank,ridit 和 modridit 4 种,默认的方法为 table,本例中使用该方法。使用 table方法打分时,字符型变量各水平的取值为对应的行标号;数值型变量的取值为输入数据集中定义的变量赋值,例如本例年龄的取值是字符型的,因此取值为 1 到 3。若此处为药物的不同剂量,如 10、30、50 mg,取值就是 10、30 和 50。需要注意的是由于 10、30 和 50 间隔相同,因此计算结果与取值 1、2、3 并无差别。若此处为间距不等的数值型变量,计算结果与取值 1、2、3 是不同的。如 10、20、50,在数据步必须写为“doA =10, 20, 50”。Exact 语句用于进行精确检验,此时为了避免计算时间过久,可以用 maxtime 选项对时间进行限定。
SAS 程序运行结果:
A * B 表的统计量
输出结果的解释:本例的输出结果还包括由原始数据形成的列联表,此处从略。检验统计量z值为 2.5093,渐近方法的单侧和双侧P值分别为 0.0060 和 0.0121,精确检验的单侧和双侧P值分别为 0.0076 和 0.0136,此时按α = 0.05 水平拒绝H0,接受H1。
专业结论:血液病患者年龄与真菌感染发生率之间存在线性变化趋势,随着患者年龄的增加,真菌感染发生率呈线性增加的趋势。
2 2 × C 列联表资料线性趋势检验的 SAS 实现
2 × C 列联表的标准型见表 3[1]。如果结果变量为多值名义变量则可按双向无序的 R × C 表资料进行分析,采用一般χ2检验或 Fisher 精确检验;如果结果变量为多值有序变量,则可按结果变量为有序变量的单向有序的 R × C表资料进行分析,采取秩和检验或 Ridit 分析等方法,来回答两组受试者在有序结果的平均秩上的差别是否具有统计学意义。此时,也可以对其进行线性趋势检验。
表3 结果变量为有序变量的 2 × C 列联表资料的标准型
【例 2】有研究者对糖尿病患者下肢动脉病变情况做了调查研究,以相同年龄的未患糖尿病的人作为对照组,两组调查对象的下肢动脉病变情况见表 4。请分析下肢动脉病变程度与糖尿病患者所占的比例是否存在线性趋势[3]。
表4 糖尿病患者与对照组下肢动脉病变情况
分析与解答:这是一个结果变量为多值有序变量的 2 × 3 列联表资料。若要分析不同调查对象下肢动脉病变情况是否相同,可采用秩和检验或 Ridit 分析;若要分析下肢动脉病变程度与糖尿病患者所占的比例是否存在线性趋势,则需采用线性趋势检验。
2 × C 列联表资料的线性趋势检验的方法与 R × 2 列联表资料的线性趋势检验不同,SAS 程序中没有现成的过程可供使用,需对计算公式进行编程,实现统计量和P值的计算。
线性趋势检验有以下几个指标:多项概率pi、权重wi、条件概率δi及趋势值πi。以表 3 第 1 行为考察对象,多项概率pi为表 3 中第 1 行第i列对应格子中的频数在行合计中所占的比例,即pi=n1i/n1+;权重wi表示第i列的合计在总例数中所占的比例,即wi=n+1/n;条件概率δi是当结果变量取值为Bi时的条件概率,也就是第 1 行第i列对应格子中的频数在列合计中所占的比例,即δi=n1i/n+1;趋势值πi由下式计算:
线性趋势检验的原假设就是π1=π2= … =πk。线性趋势检验统计量为:
对 2 × C 列联表资料进行线性趋势检验的程序如下,设程序名为 li2.sas。
该程序较复杂,读者在应用时,只需要对数据步的数据进行相应修改即可。两个宏变量 n 代表总例数,n1 代表第一行的合计值,输入的变量x代表结果变量的取值,y1 代表第一行的频数,y 代表列合计。
SAS程序运行结果:
多项概率、权重、条件概率及趋势值的估计结果
线性趋势检验结果
输出结果的解释:以上是多项概率、权重、条件概率即及趋势值的估计结果。由于估计的多项概率值和估计的趋势值呈现增大的趋势,因此进行单侧检验。线性趋势检验的统计量z=3.3728926005,单侧P= 0.0003719148 < 0.05,拒绝原假设。
专业结论:根据趋势值的估计结果,多项概率和估计的趋势值逐渐增大,说明下肢动脉病变较重的患者中,糖尿病病人的比例逐渐增加。
需要说明的是,线性趋势检验的目的是考察某一行上的多项概率是否随着结果变量的取值存在线性增加或下降趋势,结合专业知识和根据样本估计的多项概率值,人们通常会有一个初步的判断,因此线性趋势检验多进行的是单侧检验。若要进行双侧检验,将单侧概率值乘以 2 即是双侧概率的取值。
[1] Hu LP. Medical statistics-analysis of quantitative and qualitative data applying the triple-type theory. Beijing: People’s Military Medical Press, 2009:281-286, 298-299. (in Chinese)胡良平. 医学统计学-运用三型理论分析定量与定性资料. 北京:人民军医出版社, 2009:281-286, 298-299.
[2] SAS Institute Inc. SAS/STAT 9.2 User’s Guide. Cary, NC: SAS Institute Inc, 2008:1760-1761.
[3] Xu ZW, Zhang WG, Du YK, et al. How to select an appropriate statistical method to analyze R×C tables. Clin Focus, 2011, 26(8):IV, 696. (in Chinese)许卓文, 张卫国, 杜媛鲲, 等. R×C表资料统计学方法的正确选择.临床荟萃, 2011, 26(8):IV, 696.
10.3969/cmba.j.issn.1673-713X.2012.03.016
100850 北京,军事医学科学院生物医学统计学咨询中心
胡良平,Email:lphu812@sina.com