Yuan Jian <jayuan2008 <at> yahoo.com> writes: > > Hello, > I found the residuals of glm is not the same as calculated manually. > >y=c(12,14,33,50,67,74,123,141,165,204,253,246,240) > > t=1:13 > > m1=glm(y~t+I(t^2),family=poisson(link="log")) > > coefficients(m1)[1]+coefficients(m1)[2]*log(t)+ > coefficients(m1)[3]*log(t^2)
[snip] > > log(y)-m1$residuals > 1 2 3 4 5 6 7 8 > 2.434906 2.890062 3.369962 3.775366 4.146170 4.456127 4.745377 4.982733 > 9 10 11 12 13 > 5.174013 5.326826 5.429551 5.499618 5.521138 > > i hope the last two sentences have the same result. > could anyone help me out? > thanks > Jay I'm afraid you may be misunderstanding the way GLMs work. A log link does *not* mean that the predictors get log-transformed, nor does it mean that the observed response gets log-transformed; rather, it means that the predicted response (i.e., the linear predictor based on the underlying linear model) gets exponentiated. You will have better luck (1) summing coefficients * (untransformed) predictor variables; (2) exponentiating the result; (3) comparing the differences between the predicted and observed values to residuals(m1,"response") (see ?residuals.glm). ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.