反应变量无序则使用卡方等分析方法,如果是等级资料考虑使用Wilcoxon秩检验。
1. 卡方选择标准
卡方,n>40, 理论频数大于5
似然比卡方大样本下和卡方一致,小样本似然比卡方更稳健
连续校正卡方,理论频数大于1小于5
Fisher精确检验,n<40,理论频数小于1时。
2. 配对样本,且反应变量只有两个水平
McNemar检验
data dat7; do r=1 to 2; do c=1 to 2; input freq @@; output; end; end; datalines; 160 26 5 48 ; ods html; proc freq data=dat7; tables r * c/nopct nocol norow cl; weight freq; exact mcnem; run;
3. 配对样本,反应变量有多个水平
Stuart-Maxwell
*Paired,category more than 2; data diet; input pre wk2 cnt @@; datalines; 0 0 14 0 1 6 0 2 4 1 0 9 1 1 17 1 2 2 2 0 6 2 1 12 2 2 8 ; run; proc catmod data = diet; weight cnt; response marginal; model pre*wk2 = _response_; repeated time 2; run;
4. Binomial检验
*Binomial test; data gwart; input patient $ cured $ @@; datalines; 1 YES 2 _NO 3 YES 4 _NO 5 YES 6 YES 7 _NO 8 YES 9 _NO 10 _NO 11 YES 12 _NO 13 YES 14 _NO 15 YES 16 _NO 17 _NO 18 YES 19 YES 20 _NO 21 YES 22 YES 23 _NO 24 YES 25 YES ; proc freq data=gwart; tables cured /binomial (exact level = 'YES' ) alpha=0.05; run;
binomial (exact level = 'YES' )
这个是精确检验,检验YES的比例是不是0.5.
<
tables cured / binomial alpha=0.05; exact binomial;
Exact confidence intervals, sometimes known as the Clopper-Pearson limits
5. 拟合优度检验
proc freq data=gwart; tables cured /testp = (40 60) alpha=0.05; exact chisq; run;
6. 卡方检验
data dat3; do r=1 to 3; do c=1 to 4; input freq @@; output; end; end; datalines; 112 150 205 40 200 112 135 73 362 219 310 69 ; proc freq data = dat3; table r*c/chisq NOROW NOCOL; weight freq; run;
EXACT CHISQ;
就是重复显示了下。
对于CMH的用法,可参考CMH