[R] refering to variable names in lm where the variable name is in another variable

John Kane jrkrideau at yahoo.ca
Wed Jan 2 18:27:09 CET 2008


Have a look at "nam[com[1,1]]" , You're regressing
against a character.  Try 
mod<-lm(y~dat[, com[1,1]],data=dat)


--- Daniel O'Shea <dan.oshea at dnr.state.mn.us> wrote:

> I am trying to refer to a variable name in a lm
> regression where the variable name is in another
> variable, but it does seem to work.  Here is an
> example:
> 
> y<-rnorm(10)
>
dat<-data.frame(x1=rnorm(10),x2=rnorm(10),x3=rnorm(10))
> nam<-c('x1','x2','x3')
> library(gtools)
> com<-combinations(3,2,1:3)
> mod<-lm(y~nam[com[1,1]],data=dat)
> 
> #error in model frame....:variable lengths differ().
> 
> I also get the error if i just refer to variable x1
> as nam[1] in the lm. any suggestions.  I am trying
> to set up a for loop that will perform an all
> subsets regression and calculate the AIC for each.
> 
> Dan
> 
> ______________________________________________
> 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