Description Usage Arguments Details Value Author(s) See Also Examples
glmlist
creates a glmlist
object containing a list of fitted glm
objects with their names.
loglmlist
does the same for loglm
objects.
The intention is to provide object classes to facilitate model comparison,
extraction, summary and plotting of model components, etc., perhaps using
lapply
or similar.
There exists a anova.glm
method for glmlist
objects. Here,
a coef
method is also defined, collecting the coefficients from all models in
a single object of type determined by result
.
1 2 3 4 5 |
... |
One or more model objects, as appropriate to the function,
optionally assigned names as in |
object |
a |
result |
type of the result to be returned |
The arguments to glmlist
or loglmlist
are of the form value
or name=value
.
Any objects which do not inherit the appropriate class glm
or loglm
are excluded, with a warning.
In the coef
method, coefficients from the different models are matched by name in the list of
unique names across all models.
An object of class glmlist
loglmlist
, just like a list
,
except that each model is given a name
attribute.
Michael Friendly;
coef
method by John Fox
The function llist
in package Hmisc
is similar, but perplexingly
more general.
The function anova.glm
also handles glmlist objects
LRstats
gives LR statistics and tests for a glmlist
object.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | data(Mental)
indep <- glm(Freq ~ mental+ses,
family = poisson, data = Mental)
Cscore <- as.numeric(Mental$ses)
Rscore <- as.numeric(Mental$mental)
coleff <- glm(Freq ~ mental + ses + Rscore:ses,
family = poisson, data = Mental)
roweff <- glm(Freq ~ mental + ses + mental:Cscore,
family = poisson, data = Mental)
linlin <- glm(Freq ~ mental + ses + Rscore:Cscore,
family = poisson, data = Mental)
# use object names
mods <- glmlist(indep, coleff, roweff, linlin)
names(mods)
# assign new names
mods <- glmlist(Indep=indep, Col=coleff, Row=roweff, LinxLin=linlin)
names(mods)
LRstats(mods)
coef(mods, result='data.frame')
#extract model components
unlist(lapply(mods, deviance))
res <- lapply(mods, residuals)
boxplot(as.data.frame(res), main="Residuals from various models")
|
Loading required package: vcd
Loading required package: grid
Loading required package: gnm
[1] "indep" "coleff" "roweff" "linlin"
[1] "Indep" "Col" "Row" "LinxLin"
Likelihood summary table:
AIC BIC LR Chisq Df Pr(>Chisq)
Indep 209.59 220.19 47.418 15 3.155e-05 ***
Col 179.00 195.50 6.829 10 0.7415
Row 174.45 188.59 6.281 12 0.9013
LinxLin 174.07 185.85 9.895 14 0.7698
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Indep Col Row LinxLin
(Intercept) 4.18756842 4.8631072 4.7061332 3.37942319
mental.L 0.04507501 0.6795332 -0.6818052 -0.66051890
mental.Q -0.30073728 -0.3233129 -0.3277282 -0.32176183
mental.C 0.39412292 0.3936983 0.1992104 0.39415885
ses.L -0.04968094 -1.0342736 0.5629992 -0.99933120
ses.Q -0.30335318 -0.5581022 -0.3328887 -0.33029582
ses.C -0.19797985 -0.1707521 -0.1979530 -0.19811915
ses^4 0.17490822 0.1230409 0.1749295 0.17494245
ses^5 0.14682648 0.2429662 0.1468266 0.14682693
ses1:Rscore NA -0.4459213 NA NA
ses2:Rscore NA -0.4594090 NA NA
ses3:Rscore NA -0.3342208 NA NA
ses4:Rscore NA -0.2814884 NA NA
ses5:Rscore NA -0.1393421 NA NA
ses6:Rscore NA NA NA NA
mentalWell:Cscore NA NA -0.3068185 NA
mentalMild:Cscore NA NA -0.1617300 NA
mentalModerate:Cscore NA NA -0.1433864 NA
mentalImpaired:Cscore NA NA NA NA
Rscore:Cscore NA NA NA 0.09068661
Indep Col Row LinxLin
47.417847 6.829334 6.280761 9.895124
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.