能告诉你什么
Crosstabs 在你的设备上运行与 SPSS LOGISTIC REGRESSION 对应的过程,支持输入、向前:LR 和向后:LR 方法,输出起始块、模型拟合统计量以及按你设定的分界值生成的分类表。
- 预测变量整体是否优于只含常量的模型(步骤、块与模型的 Omnibus 卡方检验)。
- 模型拟合优劣:-2 对数似然、Cox & Snell 与 Nagelkerke R²,以及按风险分组检验校准度的 Hosmer–Lemeshow 检验。
- 每个预测变量如何改变事件发生的优势:B、Wald 检验以及 Exp(B) 及其 95% 置信区间。
- 在分界值下模型正确分类的个案比例,按事件与非事件分别列出。
适用场景
适合使用
- 用多个预测变量预测“是/否”结果,例如流失、购买、回复或通过/未通过。
- 在控制其他变量的同时估计某个暴露因素的调整比值比。
- 用“向前:LR”或“向后:LR”方法从众多候选变量中筛选重要的预测变量。
改用其他方法
- 结果有三个及以上无序类别:使用多项 Logistic 回归。
- 结果类别有序(低/中/高):有序回归能保留顺序信息。
- 关注事件发生前的时间且存在删失个案:使用 Cox 回归。
- 某预测变量能完全区分结果:估计值会发散;输出会提示分离问题,但需要减少或合并类别。
在 Crosstabs 中如何操作
- 01
选择“二元 Logistic 回归”
在“统计”模式中打开“回归”→“二元 Logistic 回归”(LOGISTIC REGRESSION),选择“因变量(两个类别)”。
- 02
设置事件与方法
在“事件(编码为 1)”中选择要建模的结果值,默认与 SPSS 相同取较大的值。“方法”可选“输入”“向前:LR”或“向后:LR”。
- 03
添加协变量
通过“添加协变量”逐个加入预测变量。分类变量勾选“分类(指示符)”(字符串变量始终按分类处理),并把“参考类别”设为“最后一个”或“第一个”。
- 04
设置选项
在“选项”中可修改“分类分界值”(默认 .5);若需要每次迭代的 -2 对数似然和系数,勾选“迭代历史记录”。
- 05
声明权重并运行
若工作区设置了权重,选择“频数权重”“抽样权重”或“不加权运行”,然后点击“运行 Logistic 回归”。
计算示例
以下结果由 Crosstabs 引擎在构建本页时根据模拟数据实际计算得出,并非手工填写。
数据
150 名模拟免费试用用户。结果变量为是否转为付费(yes/no);预测变量为试用期内的会话次数,以及注册类型是团队还是个人。转化结果由已知的 logistic 模型按固定随机种子生成。
| 项目 | 卡方 | df | 显著性 |
|---|---|---|---|
| 步骤 | 18.464 | 2 | <.001 |
| 块 | 18.464 | 2 | <.001 |
| 模型 | 18.464 | 2 | <.001 |
| -2 对数似然 | 考克斯-斯奈尔 R 方 | 内戈尔科 R 方 | H-L 卡方 | df | H-L 显著性 |
|---|---|---|---|---|---|
| 161.278 | 0.116 | 0.166 | 3.400 | 7 | .846 |
估算在第 4 次迭代时终止。
| 实测 | 预测 no | 预测 yes | 正确百分比 |
|---|---|---|---|
| no | 103 | 4 | 96.3 |
| yes | 33 | 10 | 23.3 |
| 总体百分比 | 75.3 |
分界值为 .500。
| 项目 | B | S.E. | Wald | df | 显著性 | Exp(B) | EXP(B) 的 95% 置信区间 |
|---|---|---|---|---|---|---|---|
| sessions | 0.235 | 0.067 | 12.147 | 1 | <.001 | 1.265 | 1.108 to 1.444 |
| plan | — | — | 5.450 | 1 | .020 | — | |
| plan(1) | 0.923 | 0.395 | 5.450 | 1 | .020 | 2.516 | 1.160 to 5.458 |
| 常量 | −2.807 | 0.547 | 26.377 | 1 | <.001 | 0.060 |
plan 采用指示符编码,以 solo 为参考类别;plan(1) 表示 team 与参考类别的比较。
结果解读
两个预测变量使模型明显优于仅含常量的模型:χ²(2) = 18.46,p < .001,内戈尔科 R² = 0.166。试用会话每多一次,转化的优势(odds)乘以 1.27(95% 置信区间 1.11 至 1.44)。Hosmer–Lemeshow 检验 p = .846,没有拟合不佳的证据;在 .5 分界值下,模型正确分类了 75.3% 的用户,但实际转化者中只有 23.3% 被预测为转化;如果更看重识别转化者,可调低分类分界值。
输出表格说明
- 个案处理摘要
- 纳入分析与缺失的未加权个案数,其后为“因变量编码”,有分类协变量时还有“分类变量编码”。
- 块 0:起始块
- 仅含常量的模型:其分类表、“方程中的变量”中的常量,以及“未包括在方程中的变量”中的得分检验。
- 模型系数的 Omnibus 检验
- 步骤、块与模型的似然比卡方、自由度与显著性。在逐步方法中,步骤卡方为负表示有项被移除。
- 模型摘要
- -2 对数似然、考克斯-斯奈尔 R 方和内戈尔科 R 方,并注明估计在第几次迭代终止。
- 霍斯默-莱梅肖检验
- 卡方、自由度(组数 − 2)与显著性,并附“Hosmer-Lemeshow 检验的列联表”。分组方式与 SPSS 一致:约 10 组,且不拆分协变量模式相同的个案。
- 分类表
- 按分界值列出实测与预测结果,并给出每个结果类别及总体的正确百分比。
- 方程中的变量
- 每个协变量和指示变量的 B、标准误、Wald、自由度、显著性、Exp(B) 及其 95% 置信区间,每个分类项另有一行总体 Wald 检验;逐步方法还会输出“除去项后的模型”和“未包括在方程中的变量”。
前提假设与注意事项
- 观测相互独立,事件的对数优势与每个连续协变量呈线性关系。
- 每个预测变量需要足够的事件数:经验上,每个估计参数至少对应 10 个较少见结果类别的个案。
- 不存在完全或准完全分离;若估计出现完美拟合或在 20 次迭代内未收敛,输出会给出警告。
- 缺失值按成列删除。频数权重必须为整数;抽样权重只给出 B 和 Exp(B),不报告检验和 Hosmer–Lemeshow 结果。
结果如何验证
LOGISTIC REGRESSION 引擎以独立的 Python 参考实现(Python 3.13.13、NumPy 2.5.4、SciPy 1.18.1、statsmodels 0.15.0、pandas 2.3.3)生成的参考值进行测试。“输入”法下,B、标准误、Wald、显著性、Exp(B) 及其 95% 置信区间、-2LL、Omnibus 卡方、Cox & Snell 与 Nagelkerke R²、分界值 .5 时的分类表,以及按 SPSS 分组方式计算的 Hosmer–Lemeshow 检验,与 statsmodels Logit 的误差在 1e-8 以内(相对于 1 与参考值中较大者),块 0 得分检验在 1e-7 以内。在拟合值无结的数据上与 R 4.6.1 的 glm 和 ResourceSelection 0.3.6 的 hoslem.test 对照:B 误差在 1e-6 以内,标准误在 1e-5 以内,-2LL 在 1e-8 以内,Hosmer–Lemeshow 在 1e-6 以内。“向前:LR”与“向后:LR”对照手工执行的得分/似然比选择序列(1e-7),其他测试覆盖频数权重、抽样权重与分离检测。 验证证据(英文)
常见问题
如何解读 Exp(B)?
Exp(B) 即比值比:连续协变量每增加一个单位,或某指示类别相对于参考类别,事件发生的优势乘以该倍数。大于 1 表示优势上升,小于 1 表示下降。
哪个结果值是“事件”?
默认与 SPSS 相同取两个值中较大者,可通过“事件(编码为 1)”修改。“因变量编码”表会确认哪个值被编码为 1。
为什么 Nagelkerke R² 远低于线性回归的 R²?
伪 R² 衡量的是似然的改善而非解释方差,通常较低。应结合 Omnibus 检验、分类表和 Hosmer–Lemeshow 检验综合评价模型。
模型大多数个案分类正确,却漏掉了大部分事件,为什么?
事件少见时,.5 的分界值会倾向于预测常见结果。可把“分类分界值”调低到接近实测事件率,以牺牲部分总体准确率换取敏感度,或用 ROC 曲线过程选择分界值。
分类协变量应选择哪个参考类别?
选择希望其他类别与之比较的类别,通常是基线类别或样本最多的组。SPSS 默认使用“最后一个”,也可在“参考类别”菜单中选择“第一个”。
相关过程
- 线性回归REGRESSION
- 多项 Logistic 回归NOMREG
- 有序回归PLUM
- ROC 曲线ROC
- 复杂抽样 Logistic 回归CSLOGISTIC
- 概率单位分析PROBIT
- 免费的 SPSS 替代工具:支持范围
用你自己的数据运行二元 Logistic 回归
打开 .sav、CSV 或 Excel 文件。所有计算都在浏览器中完成,文件不会离开你的设备。
SPSS 是 IBM Corp. 的商标。Crosstabs 与 IBM 无关联,也未获得 IBM 认可。