SPSS 操作:二分类Logistic 回归
作者:张耀文
1、问题与数据
某呼吸内科医生拟探讨吸烟与肺癌发生之间的关系,开展了一项成组设计的病例对照研究。选择该科室内肺癌患者为病例组,选择医院内其它科室的非肺癌患者为对照组。通过查阅病历、问卷调查的方式收集了病例组和对照组的以下信息:性别、年龄、BMI 、COPD 病史和是否吸烟。变量的赋值和部分原始数据见表1和表2。该医生应该如何分析?
表1. 肺癌危险因素分析研究的变量与赋值
表2. 部分原始数据
ID
1 2 3 4 5 6 7 8 9 10 11 12 13
gender 0 1 0 1 1 0 1 1 1 0 0 1 0
age 34 32 27 28 29 60 29 29 37 17 20 35 17
BMI 0 0 0 0 0 0 0 1 0 0 0 0 1
COPD 1 1 1 1 1 2 0 1 1 0 0 0 0
smoke 1 0 1 1 0 0 1 1 0 0 1 0 1
cancer 0 1 1 0 0 0 1 1 0 0 1 0 1
…
… … … … … …
2、对数据结构的分析
该设计中,因变量为二分类,自变量(病例对照研究中称为暴露因素)有二分类变量(性别、BMI 和是否吸烟)、连续变量(年龄)和有序多分类变量(COPD 病史)。要探讨二分类因变量与自变量之间的关系,应采用二分类Logistic 回归模型进行分析。
在进行二分类Logistic 回归(包括其它Logistic 回归)分析前,如果样本不多而变量较多,建议先通过单变量分析(t 检验、卡方检验等)考察所有自变量与因变量之间的关系,筛掉一些可能无意义的变量,再进行多因素分析,这样可以保证结果更加可靠。即使样本足够大,也不建议直接把所有的变量放入方程直接分析,一定要先弄清楚各个变量之间的相互关系,确定自变量进入方程的形式,这样才能有效的进行分析。
本例中单变量分析的结果见表3(常作为研究报告或论文中的表1)。
表3. 病例组和对照组暴露因素的单因素比较
病例组(n=85) 对照组 (n=259) χ2 /t统计量 P
性别,男(%) 56 (65.9) 126 (48.6) 7.629
正常 48 (56.5) 137 (52.9) 0.329 0.57 超重或肥胖 37 (43.5) 122 (47.1) COPD 病史,n (%) 无 21 (24.7) 114 (44.0) 14.123
单因素分析中,病例组和对照组之间的差异有统计学意义的自变量包括:性别、COPD 病史和是否吸烟。
此时,应当考虑应该将哪些自变量纳入Logistic 回归模型。一般情况下,建议纳入的变量有:1)单因素分析差异有统计学意义的变量(此时,最好将P 值放宽一些,比如0.1或0.15等,避免漏掉一些重要因素);2)单因素分析时,
没有发现差异有统计学意义,但是临床上认为与因变量关系密切的自变量。
本研究中,年龄和BMI 与因变量没有统计学关联。但是,临床认为年龄也是肺癌发生的可能危险因素,因此Logistic 回归模型中,纳入以下自变量:性别、年龄、COPD 病史和是否吸烟。
此外,对于连续变量,如果仅仅是为了调整该变量带来的混杂(不关心该变量的OR 值),则可以直接将改变量纳入Logistic 回归模型;如果关心该变量对因变量的影响程度(关心该变量的OR 值),一般不直接将该连续变量纳入模型,而是将连续变量转化为有序多分类变量后纳入模型。这是因为,在Logistic 回归中直接纳入连续变量,那么对于该变量的OR 值的意义为:该变量每升高一个单位,发生结局事件的风险变化(比如年龄每增加1岁,患肺癌的风险增加1.02倍)。这种解释在临床上大多数是没有意义的。 3、SPSS 分析方法 (1)数据录入SPSS
(2)选择Analyze→Regression →
Binary Logistic
(3)选项设置
1)主对话框设置:将因变量cancer 送入Dependent 框中,将纳入模型的自变量sex, age, BMI和COPD 变量Covariates 中。本研究中,纳入age 变量仅仅是为了调整该变量带来的混杂(不关心该变量的OR 值),因此将age 直接将改变量纳入Logistic 回归模型。
对于自变量筛选的方法(Method 对话框),SPSS 提供了7种选择,使用各种方法的结果略有不同,读者可相互印证。各种方法之间的差别在于变量筛选方法不同,其中Forward: LR法(基于最大似然估计的向前逐步回归法)的结果相对可靠,但最终模型的选择还需要获得专业理论的支持。
2)Categorical 设置:该选项可将多分类变量(包括有序多分类和无序多分类)变换成哑变量,指定某一分类为参照。本研究中,COPD 是多分类变量,我们指定“无COPD 病史”的研究对象为参照组,分别比较“轻/中度”和“重度”组相对于参照组患肺癌的风险变化。
点击Categorical →将左侧Covariates 中的COPD 变量送入右侧Categorical Covariates 中。点击Contrast 右侧下拉菜单,选择Indicator (该下拉菜单内的选项是几种与参照比较的方式,Indicator 方式最常用,其比较方法为:第一类或最后一类为参照类,每一类与参照类比较)。
在Reference Category的右侧选择First (表示选择变量COPD 中,赋值最小的,即“0”作为参照。如果选择Last 则表示以赋值最大的作为参照)→点击Change →点击Continue 。
3)Options 设置中,勾选如下选项及其意义:
Hosmer-Lemeshow goodness-of-fit:检验模型的拟合优度;
CI for exp(B):结果给出OR 值的95%可信区间; Display →At last step:仅展示变量筛选的最后一步结果。 →Continue→回到主界面→
OK
4、结果解读
Logistic 回归的结果给出了很多表格,我们仅需要重点关注三个表格。 (1)Omnibus Tests of Model Coefficients:模型系数的综合检验。其中Model 一行输出了Logistic 回归模型中所有参数是否均为0的似然比检验结果。P
(2)Hosmer and Lemeshow Test:是检验模型的拟合优度。当P 值不小于检验水准时(即P>0.05),认为当前数据中的信息已经被充分提取,模型拟合优度较高。
(3)Variables in the Equation:
1)由于本次统计过程中筛选变量的方式是Forward: LR 法,因此Variables in the Equation表格中列出了最终筛选进入模型的变量和其参数。其中Sig. 一列表示相应变量在模型中的P 值,Exp (B)和95% CI for EXP (B)表示相应变量的OR 值和其95%可信区间。
对于sex, smoke这两个二分类变量,OR 值的含义为:相对于赋值较低的研究对象(sex 赋值为“0”的为女性;smoke 赋值为“0”的为不吸烟),赋值较高的研究对象(男性、吸烟者)发生肺癌的风险为是多少(2.308倍、3.446倍)。
2)对于多分类变量COPD ,设置中以“0”组作为参照,则得到的结果是“1”组、“2”组分别对应于“0”组的OR 值。在Logistic 回归中,设置过哑变量的多分类变量是同进同出的,即只要有一组相对于参照组的OR 值有统计学意义,则该变量的全部分组均纳入模型。COPD 变量的第一行没有OR 值,其P 值代表该变量总体检验的差异有统计学意义(即至少有一组相对于参照组的OR 值有统计学意义)。
3)本研究中的COPD 变量以“0”组作为参照, 因此COPD (1)行的参数中给出了“1”相对于“0”组的OR 值和P 值,而在COPD (2)行的参数中给出了“2”组相对于“0”组的OR 值和P 值。
4)Constant 为回归方程的截距,在模型中一般没有实际意义,大家可不必关注。 5、撰写结论
本研究发现,85例肺癌患者中,吸烟者67例(78.8%);259例非肺癌患者中,吸烟者153例(59.1%),
肺癌患者和非肺癌患者中的吸烟率的差异有统计学
意义(χ2 =10.829, P
多变量分析的结果见表4(常作为研究报告或论文中的表2)。
表4. 肺癌危险因素的Logistic 回归分析
性别
女 男 COPD 病史 无
轻/中度
重度 吸烟
无 有
OR (95% CI) 1.00
2.31 (1.34-3.97) 1.00
1.58 (0.81-3.10) 3.60 (1.90-6.82) 1.00
3.45 (1.86-6.40)
P 值
更多统计学教程,可关注“医咖会”微信公众号。
SPSS 操作:二分类Logistic 回归
作者:张耀文
1、问题与数据
某呼吸内科医生拟探讨吸烟与肺癌发生之间的关系,开展了一项成组设计的病例对照研究。选择该科室内肺癌患者为病例组,选择医院内其它科室的非肺癌患者为对照组。通过查阅病历、问卷调查的方式收集了病例组和对照组的以下信息:性别、年龄、BMI 、COPD 病史和是否吸烟。变量的赋值和部分原始数据见表1和表2。该医生应该如何分析?
表1. 肺癌危险因素分析研究的变量与赋值
表2. 部分原始数据
ID
1 2 3 4 5 6 7 8 9 10 11 12 13
gender 0 1 0 1 1 0 1 1 1 0 0 1 0
age 34 32 27 28 29 60 29 29 37 17 20 35 17
BMI 0 0 0 0 0 0 0 1 0 0 0 0 1
COPD 1 1 1 1 1 2 0 1 1 0 0 0 0
smoke 1 0 1 1 0 0 1 1 0 0 1 0 1
cancer 0 1 1 0 0 0 1 1 0 0 1 0 1
…
… … … … … …
2、对数据结构的分析
该设计中,因变量为二分类,自变量(病例对照研究中称为暴露因素)有二分类变量(性别、BMI 和是否吸烟)、连续变量(年龄)和有序多分类变量(COPD 病史)。要探讨二分类因变量与自变量之间的关系,应采用二分类Logistic 回归模型进行分析。
在进行二分类Logistic 回归(包括其它Logistic 回归)分析前,如果样本不多而变量较多,建议先通过单变量分析(t 检验、卡方检验等)考察所有自变量与因变量之间的关系,筛掉一些可能无意义的变量,再进行多因素分析,这样可以保证结果更加可靠。即使样本足够大,也不建议直接把所有的变量放入方程直接分析,一定要先弄清楚各个变量之间的相互关系,确定自变量进入方程的形式,这样才能有效的进行分析。
本例中单变量分析的结果见表3(常作为研究报告或论文中的表1)。
表3. 病例组和对照组暴露因素的单因素比较
病例组(n=85) 对照组 (n=259) χ2 /t统计量 P
性别,男(%) 56 (65.9) 126 (48.6) 7.629
正常 48 (56.5) 137 (52.9) 0.329 0.57 超重或肥胖 37 (43.5) 122 (47.1) COPD 病史,n (%) 无 21 (24.7) 114 (44.0) 14.123
单因素分析中,病例组和对照组之间的差异有统计学意义的自变量包括:性别、COPD 病史和是否吸烟。
此时,应当考虑应该将哪些自变量纳入Logistic 回归模型。一般情况下,建议纳入的变量有:1)单因素分析差异有统计学意义的变量(此时,最好将P 值放宽一些,比如0.1或0.15等,避免漏掉一些重要因素);2)单因素分析时,
没有发现差异有统计学意义,但是临床上认为与因变量关系密切的自变量。
本研究中,年龄和BMI 与因变量没有统计学关联。但是,临床认为年龄也是肺癌发生的可能危险因素,因此Logistic 回归模型中,纳入以下自变量:性别、年龄、COPD 病史和是否吸烟。
此外,对于连续变量,如果仅仅是为了调整该变量带来的混杂(不关心该变量的OR 值),则可以直接将改变量纳入Logistic 回归模型;如果关心该变量对因变量的影响程度(关心该变量的OR 值),一般不直接将该连续变量纳入模型,而是将连续变量转化为有序多分类变量后纳入模型。这是因为,在Logistic 回归中直接纳入连续变量,那么对于该变量的OR 值的意义为:该变量每升高一个单位,发生结局事件的风险变化(比如年龄每增加1岁,患肺癌的风险增加1.02倍)。这种解释在临床上大多数是没有意义的。 3、SPSS 分析方法 (1)数据录入SPSS
(2)选择Analyze→Regression →
Binary Logistic
(3)选项设置
1)主对话框设置:将因变量cancer 送入Dependent 框中,将纳入模型的自变量sex, age, BMI和COPD 变量Covariates 中。本研究中,纳入age 变量仅仅是为了调整该变量带来的混杂(不关心该变量的OR 值),因此将age 直接将改变量纳入Logistic 回归模型。
对于自变量筛选的方法(Method 对话框),SPSS 提供了7种选择,使用各种方法的结果略有不同,读者可相互印证。各种方法之间的差别在于变量筛选方法不同,其中Forward: LR法(基于最大似然估计的向前逐步回归法)的结果相对可靠,但最终模型的选择还需要获得专业理论的支持。
2)Categorical 设置:该选项可将多分类变量(包括有序多分类和无序多分类)变换成哑变量,指定某一分类为参照。本研究中,COPD 是多分类变量,我们指定“无COPD 病史”的研究对象为参照组,分别比较“轻/中度”和“重度”组相对于参照组患肺癌的风险变化。
点击Categorical →将左侧Covariates 中的COPD 变量送入右侧Categorical Covariates 中。点击Contrast 右侧下拉菜单,选择Indicator (该下拉菜单内的选项是几种与参照比较的方式,Indicator 方式最常用,其比较方法为:第一类或最后一类为参照类,每一类与参照类比较)。
在Reference Category的右侧选择First (表示选择变量COPD 中,赋值最小的,即“0”作为参照。如果选择Last 则表示以赋值最大的作为参照)→点击Change →点击Continue 。
3)Options 设置中,勾选如下选项及其意义:
Hosmer-Lemeshow goodness-of-fit:检验模型的拟合优度;
CI for exp(B):结果给出OR 值的95%可信区间; Display →At last step:仅展示变量筛选的最后一步结果。 →Continue→回到主界面→
OK
4、结果解读
Logistic 回归的结果给出了很多表格,我们仅需要重点关注三个表格。 (1)Omnibus Tests of Model Coefficients:模型系数的综合检验。其中Model 一行输出了Logistic 回归模型中所有参数是否均为0的似然比检验结果。P
(2)Hosmer and Lemeshow Test:是检验模型的拟合优度。当P 值不小于检验水准时(即P>0.05),认为当前数据中的信息已经被充分提取,模型拟合优度较高。
(3)Variables in the Equation:
1)由于本次统计过程中筛选变量的方式是Forward: LR 法,因此Variables in the Equation表格中列出了最终筛选进入模型的变量和其参数。其中Sig. 一列表示相应变量在模型中的P 值,Exp (B)和95% CI for EXP (B)表示相应变量的OR 值和其95%可信区间。
对于sex, smoke这两个二分类变量,OR 值的含义为:相对于赋值较低的研究对象(sex 赋值为“0”的为女性;smoke 赋值为“0”的为不吸烟),赋值较高的研究对象(男性、吸烟者)发生肺癌的风险为是多少(2.308倍、3.446倍)。
2)对于多分类变量COPD ,设置中以“0”组作为参照,则得到的结果是“1”组、“2”组分别对应于“0”组的OR 值。在Logistic 回归中,设置过哑变量的多分类变量是同进同出的,即只要有一组相对于参照组的OR 值有统计学意义,则该变量的全部分组均纳入模型。COPD 变量的第一行没有OR 值,其P 值代表该变量总体检验的差异有统计学意义(即至少有一组相对于参照组的OR 值有统计学意义)。
3)本研究中的COPD 变量以“0”组作为参照, 因此COPD (1)行的参数中给出了“1”相对于“0”组的OR 值和P 值,而在COPD (2)行的参数中给出了“2”组相对于“0”组的OR 值和P 值。
4)Constant 为回归方程的截距,在模型中一般没有实际意义,大家可不必关注。 5、撰写结论
本研究发现,85例肺癌患者中,吸烟者67例(78.8%);259例非肺癌患者中,吸烟者153例(59.1%),
肺癌患者和非肺癌患者中的吸烟率的差异有统计学
意义(χ2 =10.829, P
多变量分析的结果见表4(常作为研究报告或论文中的表2)。
表4. 肺癌危险因素的Logistic 回归分析
性别
女 男 COPD 病史 无
轻/中度
重度 吸烟
无 有
OR (95% CI) 1.00
2.31 (1.34-3.97) 1.00
1.58 (0.81-3.10) 3.60 (1.90-6.82) 1.00
3.45 (1.86-6.40)
P 值
更多统计学教程,可关注“医咖会”微信公众号。