One p-value for glm model

glm, lm, p-value, r, regression

Solution

You can calculate the F statistics like this:

glm.D9 <- glm(weight ~ group + conf)

glm.0 <- glm(weight ~ 1)

anova(glm.D9, glm.0, test="F")

# Analysis of Deviance Table
# 
# Model 1: weight ~ group + conf
# Model 2: weight ~ 1
#   Resid. Df Resid. Dev Df Deviance      F Pr(>F)
# 1        17     8.5868                          
# 2        19     9.4175 -2  -0.8307 0.8223 0.4562

See `?anova.glm` for details and other tests available.

Problem

i'm searching for a way to get one p-value which describes the goodness of fit for a glm-model. Here is a slightly modified example from the `lm` manpage: ``` ctl <- c(4.17,5.58,5.18,6.11,4.50,4.61,5.17,4.53,5.33,5.14) trt <- c(4.81,4.17,4.41,3.59,5.87,3.83,6.03,4.89,4.32,4.69) conf<- c(rnorm(mean=-1, sd=1, n=10), rnorm(mean=1, sd=1, n=10)) group <- gl(2,10,20, labels=c("Ctl","Trt")) weight <- c(ctl, trt) lm.D9 <- lm(weight ~ group + conf) ``` With `summary(lm.D9)` one gets ``` Call: lm(formula = weight ~ group + conf) Residuals: Min 1Q Median 3Q Max -1.17619 -0.40373 -0.05262 0.24987 1.40777 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 4.97416 0.25153 19.775 3.6e-13 *** groupTrt -0.23724 0.41117 -0.577 0.572 conf -0.07044 0.13725 -0.513 0.614 --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 Residual standard error: 0.7111 on 17 degrees of freedom Multiple R-squared: 0.08722, Adjusted R-squared: -0.02017 F-statistic: 0.8122 on 2 and 17 DF, p-value: 0.4604 ``` If id do the same with glm ``` glm.D9 <- glm(weight ~ group + conf) summary(glm.D9) ``` i get ``` Call: glm(formula = weight ~ group + conf) Deviance Residuals: Min 1Q Median 3Q Max -1.17619 -0.40373 -0.05262 0.24987 1.40777 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 4.97416 0.25153 19.775 3.6e-13 *** groupTrt -0.23724 0.41117 -0.577 0.572 conf -0.07044 0.13725 -0.513 0.614 --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 (Dispersion parameter for gaussian family taken to be 0.5056514) Null deviance: 9.4175 on 19 degrees of freedom Residual deviance: 8.5961 on 17 degrees of freedom AIC: 47.869 Number of Fisher Scoring iterations: 2 ``` `lm` has the F-statistics as summary for the whole model, `glm` has not. So again the question: How can i get one p-value from the glm model which describes the fit? thanks

Original source