在R软件中使用box-Tidwell验证logistic regression中连续自变量x与logitP呈线性

如题。之前用R做过logistic reg,但网上很少有人讲如何验证模型中的连续自变量与logitP是否呈线性,但是投稿时又总被编辑提问“Whether you've test the linearity between logitP and this(these) continous variable(s)”。

当然,要验证以上关系,可以通过看残差图实现。这又是另一回事了。

R软件包的一个特点就是,统计小白也可以完成平时常用的统计分析工作,因此数以万计的包在大神们的个性化需求下应运而生。我们可以直接拿来套用即可。

言归正传,下面讲如何使用boxTidwell

1.加载相关包:car (boxTidwell 依托于car 包中)

library(car)

2.查看帮助文件,这是个好习惯

?boxTidwell

3.需要事先得到一个logistic回归模型的fit结果,如

fit1 <- glm(y~ x1 + x2 + x3 + x4, data = dataframe1,family = binomial()) 
# 假定x1 和 x2是连续性自变量

4.根据fit1 中的输出数据,计算得到logitP。

use(dataframe1) #需要事先加载epicalc包,设定当前数据集为dataframe1
dataframe$prob<-predict(fit1,type = "response")#得到个体预测值
dataframe$logitP<-log(prob1/(1-prob1))#得到logitP

5.使用boxTidwell函数,得到检验结果。

boxTidwell(logitP ~ x1 + x2, ~ x3 + x4, data=dataframe1)# x1,x2连续自变量;x3 x4分类自变量。

基本的结果可以通过上述实现。更多参数设置去翻帮助文件即可。

助大家在投稿路上,少些坎坷~

另外,附R car package的在线pdf网址,感兴趣的同学可以去看哈。

猜你喜欢

转载自blog.csdn.net/weixin_43036518/article/details/84165282
今日推荐