首页 > 解决方案 > 从逻辑回归模型预测预测值的 CI

问题描述

所以我有一个使用逻辑回归计算的特定预测值,现在我需要找到该概率的 CI。这是我的代码:

cheese_out <- glm(taste~acetic+person,data=cheese,family = "binomial")
probabilities <- predict(cheese_out,newdata=cheese, type="response")
testdat <- data.frame(acetic = 6, person = "Child")
pred_accp <- predict(cheese_out, newdata=testdat, type="response")

我得到我的 pred_accp 值为 0.1206 但如何根据该值计算置信区间?

标签: r

解决方案


您可以使用se.fit=TRUEpredict功能的选项。这为您提供了标准误差,您可以从中计算置信区间。例子:

out <- glm(I(Sepal.Length > 5.8) ~ Sepal.Width + Species, iris, family=binomial())
testdat <- data.frame(Sepal.Width=3, Species="versicolor")
pred_accp <- predict(out, newdata=testdat, type="response", se.fit=TRUE)

alpha <- .05  ## confidence level
cc <- -qt(alpha/2, df=Inf)*pred_accp$se.fit

setNames(
  pred_accp$fit + cc * c(-1, 0, 1), 
  c("lower", "estimate", "upper"))
#     lower  estimate     upper 
# 0.5505699 0.7072896 0.8640093 

请注意,这里假设数据是 z 分布的,即df=Inf。对于 t 分布,您可能需要在此处指定正确的自由度。


推荐阅读