1. 程式人生 > >在R軟體中使用box-Tidwell驗證logistic regression中連續自變數x與logitP呈線性

在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網址,感興趣的同學可以去看哈。