[R] A easy way to write formula

Mark Difford mark_difford at yahoo.co.uk
Sun Jul 27 11:19:47 CEST 2008


Hi Jinsong and Thierry,

>> (x1 + x2 + x3) ^2 will give you the main effects and the interactions.

Although it wasn't specifically requested it is perhaps important to note
that (...)^2 doesn't expand to give _all_ interaction terms, only
interactions to the second order, so the interaction term x1:x2:x3 will be
missing, To get these, do

(x1 + x2 + x3)^3

Regards, Mark.


ONKELINX, Thierry wrote:
> 
> (x1 + x2 + x3) ^2 will give you the main effects and the interactions.
> So this will shorten your equation to 
> 
> ft <- lm(y ~ (x1 + x2 + x3) ^2 + I(x1 * x1)+ I(x2 * x2) + I(x3 * x3),
> mydata)
> 
> HTH,
> 
> Thierry
> 
> ------------------------------------------------------------------------
> ----
> ir. Thierry Onkelinx
> Instituut voor natuur- en bosonderzoek / Research Institute for Nature
> and Forest
> Cel biometrie, methodologie en kwaliteitszorg / Section biometrics,
> methodology and quality assurance
> Gaverstraat 4
> 9500 Geraardsbergen
> Belgium 
> tel. + 32 54/436 185
> Thierry.Onkelinx at inbo.be 
> www.inbo.be 
> 
> To call in the statistician after the experiment is done may be no more
> than asking him to perform a post-mortem examination: he may be able to
> say what the experiment died of.
> ~ Sir Ronald Aylmer Fisher
> 
> The plural of anecdote is not data.
> ~ Roger Brinner
> 
> The combination of some data and an aching desire for an answer does not
> ensure that a reasonable answer can be extracted from a given body of
> data.
> ~ John Tukey
> 
> -----Oorspronkelijk bericht-----
> Van: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org]
> Namens Jinsong Zhao
> Verzonden: zondag 27 juli 2008 9:39
> Aan: r-help at r-project.org
> Onderwerp: [R] A easy way to write formula
> 
> Hi
> 
> I have a data frame, including x1, x2, x3, and y. I use lm() to fit
> second-order linear model, like the following:
> 
> ft <- lm(y ~ x1 + x2 + x3 + I(x1 * x1) + I(x1 * x2) + I(x1 * x3) + I(x2
> * x2) + I(x2 * x3) + I(x3 * x3), mydata)
> 
> if the independent variable number is large, the formula will be very
> long. Is there a easy way to write formula like the above one? I have
> read the R introduction, however, I don't find a easy way.
> 
> Any hints will be appreciated. Thanks,
> 
> Jinsong
> 
> ______________________________________________
> R-help at 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.
> 
> ______________________________________________
> R-help at 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.
> 
> 

-- 
View this message in context: http://www.nabble.com/A-easy-way-to-write-formula-tp18674075p18674632.html
Sent from the R help mailing list archive at Nabble.com.



More information about the R-help mailing list