我有一个名为MORTALITY的二元响应变量,我想在响应变量EuroScoreII,SYNTAXSCORE,AGE和SEX(SEX是二进制)上对其进行回归。我输入了以下内容:
model.m <- glm(MORTALITY ~ EuroScoreII + SYNTAXSCORE + AGE + SEX, family = binomial)
summary(model.m)
我的问题是,当我使用plot(model.m, which=1)
时,我认为它们是针对普通glm
制作的,而不是针对二项式制作。
有人可以告诉我可以使用哪些命令来执行二项式glm
的残留诊断。
非常感谢你。如果您需要自己处理数据,请告诉我。
答案 0 :(得分:1)
如果您使用boot
包,则可以轻松完成此操作:
示例数据集:
y <- rep(c(0,1),50)
x1 <- runif(100)
x2 <- runif(100)
df <- data.frame(y,x1,x2)
运行逻辑回归:
model.m <- glm(y~x1+x2,data=df,family=binomial)
运行残留诊断并绘制它们:
library(boot)
model.m.diagnostics <- glm.diag(model.m) #residual diagnostics
glm.diag.plots(model.m,model.m.diagnostics) #plot residual diagnostics
你有它!
如果您想阅读文档,则文档为here。
答案 1 :(得分:0)
在Zuur(2013)第101页中,提供了以下代码用于验证二项式GLM:
# Residual vs. fitted
E2 <- resid(model.m, type="pearson")
F2 <- fitted(model.m, type="response")
plot(x=F2, y=E2, xlab="fitted values", ylab="Pearson residuals")
abline(h=0, lty=2)
# Cook's distance
plot(cooks.distance(model.m), ylim=c(0,1), ylab="Cook distance values", type="h")
# Pearson residuals vs. continous covariate
plot(x=df$SYNTAXSCORE, y=E2, xlab="SYNTAXSCORE", ylab="Pearson residuals")
abline(h=0, lty=2)
Zuur等。 (2013):初学者指南GLM和GLMM与R。