首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >理解glm$残留物和resid(glm)

理解glm$残留物和resid(glm)
EN

Stack Overflow用户
提问于 2010-03-28 00:40:23
回答 2查看 30K关注 0票数 13

您能告诉我 glm $residualsresid(glm)返回的是什么吗,其中glm是一个拟泊松对象。例如,如何使用glm$y和glm$linear.predictors创建它们。

glm$残留物

代码语言:javascript
复制
     n missing  unique    Mean     .05     .10   .25  .50     .75     .90     .95

 37715   10042    2174 -0.2574 -2.7538 -2.2661 -1.4480 -0.4381  0.7542  1.9845  2.7749



lowest : -4.243 -3.552 -3.509 -3.481 -3.464
highest:  8.195  8.319  8.592  9.089  9.416

resid(glm)

代码语言:javascript
复制
        n    missing     unique       Mean        .05        .10        .25
    37715          0       2048 -2.727e-10    -1.0000    -1.0000    -0.6276
      .50        .75        .90        .95
  -0.2080     0.4106     1.1766     1.7333

lowest : -1.0000 -0.8415 -0.8350 -0.8333 -0.8288
highest:  7.2491  7.6110  7.6486  7.9574 10.1932
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-03-28 05:39:19

调用resid(模型)将默认为偏差残差,而模型$RE阻将给出工作残差。由于链接函数的存在,没有模型残差的单一定义。有偏差、工作、部分、皮尔逊和反应残差。因为它们只依赖于平均结构(而不是方差),所以拟泊松和泊松的残差具有相同的形式。有关详细信息,您可以查看residuals.glm函数,但下面是一个示例:

代码语言:javascript
复制
counts <- c(18,17,15,20,10,20,25,13,12)
outcome <- gl(3,1,9)
treatment <- gl(3,3)
glm.D93 <- glm(counts ~ outcome + treatment, family=quasipoisson())
glm.D93$resid


#working
resid(glm.D93,type="working")
(counts - glm.D93$fitted.values)/exp(glm.D93$linear)

#deviance
resid(glm.D93,type="dev")
fit <- exp(glm.D93$linear)
poisson.dev <- function (y, mu) 
    sqrt(2 * (y * log(ifelse(y == 0, 1, y/mu)) - (y - mu)))
poisson.dev(counts,fit) * ifelse(counts > fit,1,-1)

#response
resid(glm.D93,type="resp")
counts - fit

#pearson
resid(glm.D93,type="pear")
(counts - fit)/sqrt(fit)
票数 25
EN

Stack Overflow用户

发布于 2010-03-28 02:36:24

我对泊松和准泊松分布还不太了解,无法按要求的深度回答你的问题(即,一个将变量转化为使用模型的残差的精确方程),但如果有任何混淆是由于使用了何种剩余类型,以及为什么这两个命令给出了不同的答案,这可能会有所帮助:

resid()默认为R中的“偏差”类型,但是glm()为$residuals向量分配了不同的残差。

如果使用拟泊松族,glm()将分配工作类型的残差,而resid()则将偏差类型作为默认类型。

要尝试这一点,您可以使用:

resid(glm,type="working")

glm$残留物

这应该会给出同样的答案(至少在我使用的样本数据集上是这样的)。

根据R,工作残差是:“IWLS拟合的最后迭代中的残差”。

如果您在googlebook上查找“广义线性模型和扩展”(由Hardin和Hilbe编写)一书,您可以访问第4.5节,其中解释了各种类型的残差。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2531489

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档