簡體   English   中英

預測 R 中邏輯回歸 model 的平均響應

[英]Predict mean response for a logistic regression model in R

我使用 glm function 在 R 中訓練了邏輯回歸 model

model<-glm(df1$deny~df1$dir+df1$hir+df1$lvr+df1$ccs+df1$mcs+df1$pbcr+df1$dmi+df1$self+df1$single+df1$uria+df1$condominium+df1$black,data=df1,family='binomial')

現在我想獲得數據點的平均響應

test<-c(0.59,0.24,0.941177,3,2,0,1,0,0,10.6,1,1)

測試數據點是 model 中的相應預測變量。 即dir = 0.59,hir = 0.24 ...

在這種情況下如何獲得平均響應?

model <- glm(deny~dir+hir+lvr+ccs+mcs+pbcr+dmi+
                self+single+uria+condominium+black,
              data=df1,family='binomial')
test <- c(0.59,0.24,0.941177,3,2,0,1,0,0,10.6,1,1)

您可以使用 model 定義:

X <- matrix(c(1, test), nrow = 1)
beta <- coef(model)
drop(plogis(X %*% beta))

或者

dftest <- as.data.frame(X)
names(dftest) <- c("dir", "hir", "lvr", "ccs", ...)

(名字列表需要自己填寫,我比較懶)

或者可能

names(dftest) <- setdiff(names(df1), "deny")

如果 model 變量與數據幀的順序等匹配

然后:

predict(model, newdata = dftest, type = "response")

排序。 我做了

df.test<- df1[0,-13]
head(df.test)
test<- c(0.59,0.24,0.941177,3,2,0,1,0,0,10.6,1,1)
df.test[nrow(df.test)+1,]=test
pred<- model.1 %>% predict(df.test,type='response')
pred

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM