链接:https://pan.baidu.com/s/15r0rLWkJlcecUvBPKZo_MQ?pwd=mnsj提取码:mnsj
https://www.mizhushare.com/docs/
在数据分析中,我们经常会遇到因变量是有序分类变量的情况,例如:
满意度(不满意 / 一般 / 满意);
健康状况(差 / 中 / 好);
教育水平(高中 / 本科 / 研究生)。
这类变量有明显的顺序(等级),但又不能直接当做连续数值处理,不适合普通Logistic回归。这时候,就要用到【有序Logistic回归(Ordinal Logistic Regression)】。
有序Logistic回归:
由于因变量是等级资料的特征,有序Logistic回归模型在统计学中常被称为累加Logit模型或比例优势模型。
核心原理:
有序Logistic回归并不直接预测某个具体类别的概率,而是预测“因变量小于或等于某个等级”的累积概率。这也是为什么该模型被称为“累加Logit模型”的原因。
假设因变量Y有K个有序等级(1,2,…,k )。模型通过引入K−1个阈值(Thresholds,也称为切点或截距),将原本的多分类问题转化为K−1个二分类问题。例如下图所示,因变量Y有3个水平(1、2、3),按序依次产生两个分割点,拆分出两个二元Logistic回归方程:
方程1:对比“等级1”与“等级2+3”,即计算P(Y≤1)相对于P(Y>1)的几率。
方程2:对比“等级1+2”与“等级3”,即计算P(Y≤2)相对于P(Y>2)的几率。
这种对比方式保证了信息的有序性,即低等级总是与高等级群进行对比。

平行线假设:
这是有序Logistic回归最独特也最重要的特征。
①、系数不变性:在上述拆分出的K−1个二元Logistic回归模型中,模型假设所有自变量的回归系数(斜率β )是保持不变的。
②、仅常数项改变:不同方程之间唯一的区别在于阈值(常数项/截距α)不同。随着分割点的移动(从「1vs2,3」移动到「1,2vs3」),截距会发生变化,但自变量对结果的影响力度(斜率)被认为是一致的。
如果在坐标系中画出这些回归曲线,它们应该是相互平行的。这也是为什么该模型被称为“比例优势模型”的原因——自变量每变化一个单位,odds(几率)的变化比例在各个分割点上都是恒定的。
由于“回归系数相等”是该模型成立的前提,因此在分析过程中必须进行平行线检验。


点击顶部菜单栏的【分析→回归→有序】,在打开的对话框中进行相应设置。
因变量:结果变量。本次为「满意度(Stage变量)」。
因子:用于放入分类型自变量,即那些取值代表不同类别、没有连续数值意义的变量。本次将「性别(Gender变量)、收入(Income变量)」设置为因子。 协变量:用于放入连续型或定距型自变量。本次将「年龄(Age变量)」设置为协变量。

输出对话框:
点击「输出」按钮打开「有序回归:输出」对话框,该对话框主要用于设置输出结果。
| |
可将以下变量保存到工作文件中:
| |
控制对数似然值的显示方式: 包含多项常量:将输出完整的似然值。 排除多项常量:若需与其他不包含该常数的软件结果进行对比,可选择排除常数。 |
本次在默认选项基础上勾选「显示」下的「平行线检验」以及「已保存的变量」下的「估算响应概率、预测类别、预测类别概率、实际类别概率」四个选项。

位置对话框:
点击「位置」按钮打开「有序回归:位置」对话框,该对话框主要用于模型设置。如果自变量间存在交互作用,可以再次设置。
本次示例中自变量间无交互作用,因此保持默认即可。

设置完成,点击确定。

有序Logistic回归分析的输出结果将在输出窗口中显示。另外,因设置了保存「估算响应概率、预测类别、预测类别概率、实际类别概率」选项,因此在数据集中生成选择保存的结果作为新变量。其中,「EST1_1、EST2_1、EST3_1和EST4_1」变量分别表示对因变量的四个程度的预测概率;「PRE_1」变量表示预测类别;「PCP_1」变量表示预测类别概率;「ACP_1」变量表示实际类别概率。

输出结果一:警告信息
输出结果中首先会给出一个警告信息。其核心含义是:模型中存在大量“空单元格”,即某些自变量组合(如,男性+年龄35岁+低收入)与因变量等级(如,不满意)的交叉组合中没有实际观测数据。
如果模型中包含连续变量,这个警告几乎是必然出现的,可以忽略,因为模型的参数估计(回归系数、OR值)通常是稳健的。本次示例就属于此类情况。
如果模型中只有分类变量,且空单元格比例过高(如,>50%),则可能意味着模型过于复杂或样本量不足,此时结果可能不可靠。

输出结果二:个案处理摘要
该表显示了数据的样本分布、变量分组、缺失值情况。

输出结果三:模型拟合信息
该表格展示的是最终模型与空模型(即,仅截距,没有自变量)之间的似然比检验 (Likelihood Ratio Test) 结果。
本次示例中,该检验的显著性水平p值<0.05,因此可以得出结论——最终模型显著优于空模型,即模型中包含的自变量对因变量具有显著的预测作用。

输出结果四:拟合优度
拟合优度检验表格提供了两个用于检验原假设(即,模型能够充分拟合数据)的统计检验结果。
Pearson卡方:基于观测频数与期望频数的差值平方。它对样本量非常敏感,容易受到极端值或稀疏数据的影响。
偏差(Deviance):基于似然比的统计量。虽然通常比Pearson更稳健,但在数据极度稀疏(如本例中62%的单元格为0)时,其渐近分布不再服从标准的卡方分布。
因此,本次示例中,两个检验结果均不可信,后续可以通过计算模型对因变量的预测情况(保存的结果新变量,详见第四部分)来查看模型的拟合程度。

输出结果五:伪R方
在线性回归模型中,我们习惯看R²来决定模型解释了多少变异。但在Logistic回归中,因为因变量不是连续数值,所以无法计算传统的R²,因此系统会计算以下这些近似值(伪R²):Cox and Snell,Nagelkerke和McFadden。
本次示例中,Nagelkerke为0.186,属于中等偏弱的水平。

输出结果六:参数估算值
参数估算值表展示了模型中各个自变量对因变量的影响大小、方向以及统计显著性。
阈值:
这是有序Logistic回归特有的部分。因为因变量是有序的(如,非常不满意<不满意<满意<非常满意),模型需要设定“切点”来划分这些等级。例如,第一行「Stage=0」表示「“非常不满意” VS 其他组的累积概率模型的截距」,第二行「Stage=1」表示「“非常不满意”和“不满意” VS 其他组的累积概率模型的截距」。
位置:
解释了自变量如何影响因变量(满意度)。除了常数项不同,位置(Location)中自变量的系数都是同一个系数,这也是为什么要求有序Logistic回归需要满足比例优势的假设。
需要注意的是,对于有序Logistic回归,不同软件使用的模型有所不同,因此,相同的数据使用不同的软件(SPSS、Stata、R等),得到的截距和效应值的符号会有所不同(有正有负)。对于SPSS来说,得到的方程中,除了截距项之外,所有效应值要在参数估算值表格中的原始值基础上加上负号(SPSS使用的模型是以因变量的较高等级为参照,如果不对效应值取负值,解释时要以最低等级为参照,不过得到的结论完全一样)。根据上述结果后,依据SPSS使用的模型,可以得到以下三个方程:
方程 1:界限为“非常不满意”Logit(P(Y≤0))=5.144−0.111×Age−0.230×Gender[0]+0.874×Income[1]-0.317×Income[2]方程 2:界限为“不满意”Logit(P(Y≤1))=6.786−0.111×Age−0.230×Gender[0]+0.874×Income[1]-0.317×Income[2]方程 3:界限为“满意”Logit(P(Y≤2))=9.177−0.111×Age−0.230×Gender[0]+0.874×Income[1]-0.317×Income[2]
另外,对于OR值及其95%CI,有序Logistic模块不会输出相应结果,可以根据效应值及其95%CI手工计算OR值及其95%CI。因为SPSS使用的模型是以因变量的较高等级为参照,解释OR值时要注意,例如,对应低收入人群(Income值为1),其OR值为e^0.874≈2.396,其解释为:相对高收入,低收入人群“满意度低”的OR值为2.396,即低收入人群满意度低。如果不对效应值取负值,解释时要以最低等级为参照,得到的结论完全一样,重新计算OR’值为e^(-0.874)≈0.417,其解释为:高收入人群“满意度低”的OR值是低收入人群的0.417。
也可以借助广义线性模型模块计算OR值及其95%CI(详见第五部分)。

输出结果七:平行线检验
平行线检验是判断模型是否满足核心前提假设的关键步骤。
本次示例中,p值=0.927>0.05,接受原假设,即“所有自变量的回归系数(斜率)在因变量的各个有序类别之间是相同的”。这意味着因变量在不同分割点上的自变量效应是一致的,符合有序Logistic回归的核心前提——比例优势假设。
当平行线假设不满足时,通常有以下三种处理思路:
改用无序多分类Logistic回归:放弃因变量的等级属性,将其视为无序变量进行分析。这种方法最为稳妥,但会损失数据的顺序信息,且模型参数更多,解释起来相对复杂。
拆分因变量进行多次二项Logistic回归:利用不同的分割点(如,低 vs 中+高”、“低+中 vs 高”)将因变量转化为多个二分类变量,分别建立模型。这能更细致地观察自变量在不同等级间的具体影响差异。
大样本下的特殊判断(OR值近似法):在大样本数据中,平行线检验往往过于敏感,容易出现假阳性(即P<0.05但实际差异很小)。此时可以通过拟合多个二分类Logistic回归模型,观察各自变量的优势比是否近似。若各模型的OR值非常接近,说明比例优势假设在实际意义上依然成立,可继续使用有序Logistic回归或广义有序Logit模型。


本次示例中,由于拟合优度两个检验结果均不可信,因此通过计算模型对因变量的预测情况(保存的结果新变量)来查看模型的拟合程度。
其中,「EST1_1、EST2_1、EST3_1和EST4_1」变量分别表示对因变量的四个程度的预测概率(相加和为1);「PRE_1」变量表示预测类别;「PCP_1」变量表示预测类别概率;「ACP_1」变量表示实际类别概率。

点击顶部菜单栏的【分析→描述统计→交叉表】,在打开的对话框中进行相应设置。有关交叉表的内容可以查看以下文章:
将「满意度(Stage变量)」设置为行,将「预测响应类别(PRE_1变量)」设置为列。
点击「单元格」按钮在打开的「交叉表:单元格显示」对话框中勾选「行百分比」。


设置完成,点击确定,得到交叉表结果,该表直观的展示了“实际观测到的满意度”与“模型预测的满意度”分布情况。
总体预测准确率=(4+8+83+1)/192=50%,即模型对整体数据的预测准确率为50%。对于分类问题来说,这个准确率通常被认为是较低的(除非各类别本身分布极度不均,导致随机猜测的基准线很高)。


上述有序Logistic模块可以检验比例优势假设,但是不会输出OR值及其95%CI,可以借助广义线性模型模块计算。
点击顶部菜单栏的【分析→广义线性模型→广义线性模型】,在打开的对话框中进行相应设置。
在「模型类型」选项卡页面选择「有序逻辑」模型。

在「响应」选项卡页面下,将「满意度(Stage变量)」设置为因变量,类别顺序可以根据需要进行设置(本例中满意度共有四个等级,“0=非常不满意”,如果选择升序,则0是最低的等级,如果选择降序,则表示0为最高的等级)。

在「预测变量」选项卡页面下,将「性别(Gender变量)、收入(Income变量)」设置为因子,将「年龄(Age变量)」设置为协变量。

在「模型」选项卡页面下,将三个变量均选入右侧的模型列表框中。

在「估算」选项卡页面下,将「参数估算方法」设置为「费希尔(Fisher)」。

在「统计」选项卡页面下,在默认设置的基础上勾选「包括指数参数估算值」选项。

设置完成,点击确定。广义线性模型模块不会输出「单元格信息、伪R方和平行线检验」结果。
模型拟合信息在「Ominibus检验」表中,该结果与有序Logistic模块输出结果一致。

广义线性模型模块输出的参数估算值表中的Exp(B)即为优势比OR值。
年龄是唯一一个既显著又具有明确正向预测作用的变量(越老越满意)。年龄每增加1岁,用户满意度向更高等级升级的优势提升11.8%;
性别对满意度的影响在统计上不显著;
与高收入组相比,低收入组的满意度优势显著降低,仅为高收入组的 41.7%;中等收入组则无显著差异。



夜雨聆风