能告诉你什么
Crosstabs 运行与 SPSS NPAR TESTS /K-W 对应的过程,给出经结校正的 H、ε² 效应量和 Dunn 成对比较,并提供 k 样本中位数检验以及针对有序分组的 Jonckheere-Terpstra 检验。
- 是否至少有一组的取值倾向于高于或低于其他组(H、自由度与渐近显著性)。
- 组别能解释多少排序差异:ε² = H/(N − 1)。
- 具体哪些组之间有差异:依据 Dunn 秩均值差及 Bonferroni 校正后的显著性。
- 数值是否按设定的组顺序单调上升或下降(Jonckheere-Terpstra),以及各组高于合并中位数的个案比例是否不同(中位数检验)。
适用场景
适合使用
- 比较三个及以上独立组在有序或偏态结果上的差异,例如各地区的满意度评分、各团队的处理天数。
- 各组样本量小或不等,难以支持正态假设。
- 各组有自然顺序(剂量水平、年龄段、套餐档位)且预期存在单调趋势:使用 Jonckheere-Terpstra 检验。
改用其他方法
- 只有两组:使用 Mann-Whitney U 检验,小样本时还能给出精确显著性。
- 同一批个案在每种条件下都被测量:使用相关样本的 Friedman 检验。
- 结果近似正态且需要均值差及置信区间:使用带 Welch 与 Games-Howell 的单因素方差分析。
- 同时有两个及以上分组因素:这里的秩检验只处理单个因素。
在 Crosstabs 中如何操作
- 01
选择“K 个独立样本”
在“统计”模式中打开“非参数检验”→“K 个独立样本”(NPAR TESTS /K-W)。
- 02
选择检验变量和分组变量
在“检验变量”中勾选数值型结果变量,再选择“分组变量”,默认包含其全部取值。
- 03
选择并排列各组
在“包含的组(Jonckheere-Terpstra 按此顺序)”中取消勾选可排除某组。显示顺序即 Jonckheere-Terpstra 检验所用顺序,请保持各组的自然顺序。
- 04
选择检验
在“检验类型”中勾选“Kruskal-Wallis H”“中位数”和/或“Jonckheere-Terpstra”。保持勾选“成对比较(Dunn,Bonferroni 调整)”即可获得事后比较表。
- 05
运行
选择“按检验排除个案”或“成列排除个案”后点击“运行检验”。表格下方的解读会列出校正后存在差异的配对。
计算示例
以下结果由 Crosstabs 引擎在构建本页时根据模拟数据实际计算得出,并非手工填写。
数据
来自三个地区的 33 条模拟投诉(北区 10 条、中区 12 条、南区 11 条),结果变量为解决所需的整天数,由固定种子的右偏对数正态分布生成。
| region | N | 秩平均值 |
|---|---|---|
| North | 10 | 8.05 |
| Central | 12 | 16.21 |
| South | 11 | 26.00 |
| 总计 | 33 |
| 项目 | days |
|---|---|
| Kruskal-Wallis H | 18.324 |
| df | 2 |
| 渐近显著性 | <.001 |
| 效应量 ε² = H/(N − 1) | 0.573 |
H 已针对结(同秩)进行校正。
| 样本 1-样本 2 | 检验统计 | 标准误 | 标准检验统计 | 显著性 | 调整后显著性 |
|---|---|---|---|---|---|
| North-Central | −8.158 | 4.124 | −1.978 | .048 | .144 |
| North-South | −17.950 | 4.208 | −4.266 | <.001 | <.001 |
| Central-South | −9.792 | 4.020 | −2.436 | .015 | .045 |
Dunn (1964) 秩均值差;显著性已按 Bonferroni 校正调整。
结果解读
整体检验结果为 H(2) = 18.32,p < .001,ε² = 0.573。经 Bonferroni 调整后存在差异的配对为 North–South、Central–South。报告具体配对时应引用调整后显著性,而非未调整的 p 值。
输出表格说明
- 秩
- 每个纳入组的 N 和秩平均值,以及总 N。
- 检验统计 — Kruskal-Wallis 检验
- 经结校正的 Kruskal-Wallis H、自由度(组数 − 1)、基于卡方分布的渐近显著性以及 ε² = H/(N − 1)。
- 成对比较
- 每对组的秩均值差、标准误、标准化检验统计量、未调整显著性及 Bonferroni 调整后显著性(Dunn, 1964)。应以调整后的一列为准。
- 检验统计 — 中位数检验
- 合并中位数,以及对各组高于和不高于中位数的个案数所做的卡方检验(频数见“频率 — 中位数检验”)。只有两组且 N ≤ 30 时采用 Fisher 精确检验。
- 检验统计 — Jonckheere-Terpstra 检验
- J-T 统计量的观察值、平均值与标准差,标准化 J-T 及其双尾渐近显著性。标准化值为正表示数值按所列顺序递增。
前提假设与注意事项
- 各组相互独立,每个个案只属于一个组。
- 结果变量至少为有序尺度;若要把 H 解读为中位数差异,各组分布形状应相近。
- 显著性为渐近值(卡方分布)。各组样本很小(每组少于约 5 个)时,对临界 p 值需谨慎。
结果如何验证
k 样本引擎以参考值由独立的参考实现使用 SciPy 1.18.1、statsmodels 0.15.0、pingouin 0.7.0 与 scikit-posthocs 0.17.1 生成:Kruskal-Wallis H 与 p 值对照 scipy.stats.kruskal,Dunn 成对比较 p 值与 Bonferroni 调整对照 scikit-posthocs 的 posthoc_dunn,中位数检验对照 scipy.stats.median_test 与 fisher_exact,Jonckheere-Terpstra 通过逐对穷举计数核对。所有结果误差均在 1e-9 以内(相对于 1 与参考值中较大者)。 验证证据(英文)
常见问题
Kruskal-Wallis 结果显著后应做什么事后检验?
对秩平均值做 Dunn 检验,它使用整体检验中的合并秩。Crosstabs 按 Bonferroni 方法调整 p 值(p × 配对数,最高为 1),与 SPSS 成对比较的做法一致。
效应量应如何报告?
报告检验表中的 ε² = H/(N − 1)。其取值在 0 到 1 之间,约 .01、.08、.26 通常分别视为小、中、大效应。
能否改为分别做多次 Mann-Whitney 检验,而不用 Dunn 比较?
逐对单独检验每次都会重新排秩,而且需要自行做多重比较校正。Dunn 比较沿用同一套秩并自动校正,是更常用的后续分析。
什么情况下 Jonckheere-Terpstra 比 Kruskal-Wallis 更合适?
当你在看到数据前就预期有序分组间存在方向性变化(例如结果随剂量改善)时。它把检验效能集中在单调趋势上。
Kruskal-Wallis 有精确 p 值吗?
本面板不提供:H、中位数检验卡方和 Jonckheere-Terpstra 都只报告渐近显著性。
相关过程
- 单因素方差分析ONEWAY
- Mann-Whitney U 检验NPAR TESTS /M-W
- Friedman 检验NPAR TESTS /FRIEDMAN
- 贝叶斯单因素方差分析BAYES ANOVA
- 个案排秩RANK
- 分组均值比较MEANS
- 免费的 SPSS 替代工具:支持范围
用你自己的数据运行 Kruskal-Wallis 检验
打开 .sav、CSV 或 Excel 文件。所有计算都在浏览器中完成,文件不会离开你的设备。
SPSS 是 IBM Corp. 的商标。Crosstabs 与 IBM 无关联,也未获得 IBM 认可。