residSVD {gnm} | R Documentation |
Multiplicative Approximation of Model Residuals
Description
This function uses the first d
components of the singular value
decomposition in order to approximate a vector of model residuals by a
sum of d
multiplicative terms, with the multiplicative
structure determined by two specified factors.
Usage
residSVD(model, fac1, fac2, d = 1)
Arguments
model |
a model object with |
fac1 |
a factor |
fac2 |
a factor |
d |
integer, the number of multiplicative terms to use in the approximation |
Details
This function operates on the matrix of mean residuals, with rows
indexed by fac1
and columns indexed by fac2
. For
glm
and glm
models, the matrix entries are weighted
working residuals. The primary use of residSVD
is to
generate good starting values for the parameters in Mult
terms
in models to be fitted using gnm
.
Value
If d = 1
, a numeric vector; otherwise a numeric
matrix with d
columns.
Author(s)
David Firth and Heather Turner
See Also
Examples
set.seed(1)
## Goodman RC1 association model fits well (deviance 3.57, df 8)
mentalHealth$MHS <- C(mentalHealth$MHS, treatment)
mentalHealth$SES <- C(mentalHealth$SES, treatment)
## independence model
indep <- gnm(count ~ SES + MHS, family = poisson, data = mentalHealth)
mult1 <- residSVD(indep, SES, MHS)
## Now use mult1 as starting values for the RC1 association parameters
RC1model <- update(indep, . ~ . + Mult(SES, MHS),
start = c(coef(indep), mult1), trace = TRUE)
## Similarly for the RC2 model:
mult2 <- residSVD(indep, SES, MHS, d = 2)
RC2model <- update(indep, . ~ . + instances(Mult(SES, MHS), 2),
start = c(coef(indep), mult2), trace = TRUE)
##
## See also example(House2001), where good starting values matter much more!
##