Update looks like the function I want to use, but it still isn't working, possibly because I am doing something more complicated than my message implied.
What I want to do is subtract a vector of random effects (determined within the function) from Y. I hoped that something like this:
tree <- rpart(update(formula,.-NewRandomEffects~.))
would work, but I got the message
Error in update.default(formula, . - NewRandomEffects ~ .) :
need an object with call component
I have considered creating a function that would subtract the random effect from each Y individually, but there is no identifier on Y.
Is there an obvious fix I'm missing?
Thanks for your suggestions!
Rebecca
----- Original Message -----
From: "Eik Vettorazzi" <E.Vettorazzi at uke.uni-hamburg.de>
To: "Rebecca Sela" <rsela at stern.nyu.edu>
Cc: r-help at r-project.org
Sent: Monday, October 1, 2007 11:34:13 AM (GMT-0500) America/New_York
Subject: Re: [R] Disentagling formulas
maybe I didn't understand the problem, but you can do sth like
formula<-y~X1+X2+X3
lm(update.formula(formula,f(Y)~.))
maybe
?all.vars
or
?terms
will help you too.
hth.
Rebecca Sela schrieb:
I am writing a program in which I would like to take in a formula, change the response (Y) variable into something else, and then pass the formula, with the new Y variable to another function. That is, I am starting with
formula <- Y~X1+X2+X3
and I'd like to do something like
Y <- formula$Y
newY <- f(Y)
lm(newY~X1+X2+X3)
So far, it seems that my only option will be a very complicated sequence of steps involving match.call(). Is there a simpler way to change the response variable in a formula?
Thanks in advance!
Rebecca
--
Rebecca Sela
Statistics Department
Stern School of Business
New York University