欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

存在分类变量时分别利用SPSS和python做多元线性回归

程序员文章站 2022-04-27 12:21:39
...

1. SPSS

当存在分类变量时,需要首先处理成多个哑变量,例如将年龄分成三个:age<18, age18_60, age>60。

然后在SPSS里纳入除了ref的所有哑变量,例如我们要将18-60作为参考组,就纳入age<18和age>60,不要纳入age18-60。

首先可以选择stepwise进行特征筛选建模。但是勾选逐步后,不能enable Bootstrap。所以可以分两步走,第一步逐步来筛选变量。

存在分类变量时分别利用SPSS和python做多元线性回归

然后根据要纳入的变量,再执行一次回归,选择进入并且勾选bootstrap。

存在分类变量时分别利用SPSS和python做多元线性回归

 

2. Python

python中的statsmodels可以

from statsmodels.formula.api import ols

formula = f"DAT_Class~C(Sex)+C(年龄_分类)+C(Antibiotic_usage)+C(Tumor_presence)+C(Trans)+贫血+消化+低血容量+感染+凝血障碍+肺炎+脓毒血症+休克+急性白血病+糖尿病+早产儿+const"

df = sm.add_constant(df)
model = ols(formula, data=df).fit()
model.summary()

 利用这个方式也可以对分类变量指定参考组。例如指定年龄的参考组为18-60:

formula = f"DAT_Class~C(Sex)+C(年龄_分类, Treatment(reference='18-60'))+C(Antibiotic_usage)+C(Tumor_presence)+C(Trans)+贫血+消化+低血容量+感染+凝血障碍+肺炎+脓毒血症+休克+急性白血病+糖尿病+早产儿+const"

ref: https://www.sohu.com/a/211917960_489312

 

相关标签: python 统计