sas统计学习笔记(四)
程序员文章站
2022-07-11 12:22:04
...
有时候列联表的情况很负责,比如某个因素的每个水平上都有一个2×2列联表,一种用于分析多层2×2表的方法是Mantel-Haenszel卡方统计量,这个技术有时也叫元分析。用sas软件计算分层表的卡方值非常简单,只需要在PROC FREQ中输入三向表,并加上选项ALL。
下面有一个例子,假设我们有两个2×2表,一个针对男性,一个针对女性,每个表给出了睡眠时间和体能测试达标之间的关系。
男性检验结果 | 女性检验结果 | ||||||
失败 | 通过 | 失败 | 通过 | ||||
睡眠 | 低 | 20 | 100 | 睡眠 | 低 | 30 | 100 |
高 | 15 | 150 | 高 | 25 | 200 |
***Program to compute a Mantel-Haenszel Chi-squre Test;
DATA ABILITY;
INPUT GENDER $ RESULTS $ SLEEP $ COUNT;
DATALINES;
BOYS FALL 1-LOW 20
BOYS FALL 2-HIGH 15
BOYS PASS 1-LOW 100
BOYS PASS 2-HIGH 150
GIRLS FALL 1-LOW 30
GIRLS FALL 2-HIGH 25
GIRLS PASS 1-LOW 100
GIRLS PASS 2-HIGH 200
;
PROC FREQ DATA=ABILITY;
TITLE "Mantel-Haenszel Chi-squre Test";
TABLES GENDER*SLEEP*RESULTS/ALL; *第一个为分情况讨论的变量,gender在第一个则分为男女两个表格输出sleep*results;
WEIGHT COUNT;
RUN;
(部分结果输出图)
可以看到,男性卡方值为3.7013(p=0.0544),相对风险为1.8333,女性卡方值为9.0106(p=0.0027),相对风险为2.0769.
两个表的综合结果如下:
检验优势比的同质性Breslow-Day统计量不显著(p=0.698),表示我们可以综合这两个表。
上一篇: ArrayList 底层源码扩容机制分析
下一篇: html学习之标签