[R] proper work-flow with 'formula' objects and lm()
Gabor Grothendieck
ggrothendieck at gmail.com
Thu Nov 24 23:32:04 CET 2011
On Thu, Nov 24, 2011 at 2:48 PM, Liviu Andronic <landronimirc at gmail.com> wrote:
> Dear all
> I have a work-flow issue with lm(). When I use
>> lm(y1~x1, anscombe)
>
> Call:
> lm(formula = y1 ~ x1, data = anscombe)
>
> Coefficients:
> (Intercept) x1
> 3.0001 0.5001
>
>
> I get as expected the formula, "y1 ~ x1", in the print()ed results or
> summary(). However, if I pass through a formula object
>> (form <- formula(y1~x1))
> y1 ~ x1
>> lm(form, anscombe)
>
> Call:
> lm(formula = form, data = anscombe)
>
> Coefficients:
> (Intercept) x1
> 3.0001 0.5001
>
>
> then I only get the object name in the call, 'form', instead of the
> formula. When passing a 'formula' object to lm, is it possible to
> retain in the resulting 'lm' object the actual formula used for the
> regression: "y1 ~ x1"?
>
Try this:
> form <- formula(y1~x1)
> do.call("lm", list(form, quote(anscombe)))
Call:
lm(formula = y1 ~ x1, data = anscombe)
Coefficients:
(Intercept) x1
3.0001 0.5001
--
Statistics & Software Consulting
GKX Group, GKX Associates Inc.
tel: 1-877-GKX-GROUP
email: ggrothendieck at gmail.com
More information about the R-help
mailing list