On Sep 7, 2010, at 3:16 PM, David Winsemius wrote:
On Sep 7, 2010, at 2:53 PM, Johann Hibschman wrote:
David Winsemius <dwinsem...@comcast.net> writes:
On Sep 7, 2010, at 11:02 AM, Johann Hibschman wrote:
Even so, I would prefer to only save the coefficients
Have you read through the Value section of glm's help page?
...and
?coef
I have; it's easy to get the coefficients. The part I'm struggling
with
is reconstituting an operational glm object given the coefficient
vector
and the formula.
Really, I was hoping that someone had already done this work, so I
could
stop trying re-create the right kind of term object, while making
sure
it doesn't hold on to a pointer to an environment with a lot of
data in
it, etc., etc..
I was assuming you could take all the code work that was already
tested and trim out the non essential code and arguments let it work
on a new class.
Just tested my theory and it seems to be holding up. Took the example
on the predict help page, set three of the variable length components
not needed in the predict operations to NULL and the code still runs
fine. It does not appear that either predict.glm or predict.lm check
to see if there are any missing components:
> ldose <- rep(0:5, 2)
> numdead <- c(1, 4, 9, 13, 18, 20, 0, 2, 6, 10, 12, 16)
> sex <- factor(rep(c("M", "F"), c(6, 6)))
> SF <- cbind(numdead, numalive=20-numdead)
> budworm.lg <- glm(SF ~ sex*ldose, family=binomial)
> budworm.lg["residuals"] <- NULL
> budworm.lg["linear.predictors"] <- NULL
> budworm.lg["fitted.values"] <- NULL
> plot(c(1,32), c(0,1), type = "n", xlab = "dose",
+ ylab = "prob", log = "x")
> text(2^ldose, numdead/20, as.character(sex))
> ld <- seq(0, 5, 0.1)
> lines(2^ld, predict(budworm.lg, data.frame(ldose=ld,
+ sex=factor(rep("M", length(ld)), levels=levels(sex))),
+ type = "response"))
Also took out "y", "qr", "weights", and "prior.weights"
> budworm.lg["y"] <- NULL
> budworm.lg["weights"] <- NULL
> budworm.lg["prior.weights"] <- NULL
> budworm.lg["qr"] <- NULL
... And it continue to perform without throwing an error.
--
David Winsemius, MD
West Hartford, CT
______________________________________________
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.