对单因素2组或者多组定量资料进行假设检验时,
首先想到的也许是ANOVA,
但对独立样本进行ANOVA时,
1.要检验各组数据是否满足正态性;
2.要检验各组数据方差是否齐;
当这2个条件不满足或不完全满足时,
可以采用秩和检验;
组数为3组或者3组以上时,
若Kruskal-Wallis H检验结果有统计学意义,
*若没有相同秩次时,无需对服从均匀分布的H统计量进行校正,否则需对其进行校正;
并想知道哪两组间有统计学意义,
可进行两两比较.
以3组独立样本的定量数据为例,
来实现上述假设检验.
data score;
do group = 1 to 3; *group=分组;
do id = 1 to 18; *各组样本均为18;
input score @@; *score=得分;
output;
end;
end;
cards;
0 17 17 17 18 20 22 23 23 23 24 24 24 25 28 29 30 30
22 22 23 23 24 25 25 26 26 28 28 29 29 29 29 29 30 30
23 25 25 26 27 28 28 29 29 29 29 30 30 31 31 33 35 37
;
run;
proc univariate data=score normal; *正态性检验;* 正态性不是检验得到的,或许要结合专业背景;
var score;
class group;
run;
proc anova data=score;
class group;
model score = group;
means group/hovtest = levene; *方差齐性检验;
run;
proc npar1way data=score; *Kruskal-Wallis检验 结果显示 3组的总体中位数不全相等, 接着可进行两两比较;
var score;
class group;
run;
proc rank data=score out=rankscore; *生成秩次;
var score;
ranks rs;
run;
proc anova data=rankscore;
class group;
model rs=group;
means group/snk; *对各组秩次进行两两比较;
run;
|