[R] Long model formulae

Bill.Venables at csiro.au Bill.Venables at csiro.au
Sun Oct 24 08:08:03 CEST 2010


Here is a dodge I often use.  This is a mock-up example.

_______________

bar <- data.frame(matrix(rnorm(1001), nrow = 1))
names(bar)[1] <- "y"  ## say
head(bar[,1:5])

nbar <- names(bar)
form <- as.formula(paste(nbar[1], "~", paste(nbar[-1], collapse = "+")))
fitModel <- substitute(tm <- rpart(FORM, data = DATA), 
					list(FORM = form, DATA = quote(bar)))
fitModel  ## the screen quietly erupts...

library(rpart)
eval(fitModel)  ## to do the job.
_______________

The advantage of proceeding this way is that the object you create, fm, has a meaningful (but large!) formula in it and the name of the dataframe from which the variables come.  This makes it easy, e.g. to use manipulation tools on it.


-----Original Message-----
From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org] On Behalf Of James Hirschorn
Sent: Sunday, 24 October 2010 11:51 AM
To: r-help at r-project.org
Subject: [R] Long model formulae


What is a good way to enter a very long model formula. For example:

y ~ Input.2 + Input.3 + ... + Input.1000

(assuming the corresponding dataframe has many other columns). 

Is there a way to convert a character string to a formula? Are there command line expansions in R besides the simple '.'?

Thanks.
 		 	   		  
	[[alternative HTML version deleted]]

______________________________________________
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.



More information about the R-help mailing list