Rolando I. Valdez
2019-Jun-05 04:46 UTC
[R] Including a large number of variables in a formula.
Hello, I have almost 40 variables that I am trying to include in a formula. I tried to include them using as.formula(), however the variables do not follow a patter in the name. e.g. These variables are named like: lvacb23 lvacb30 lvacb300 lvacb40 ..... lvacb81.> lvadd <- paste0("lvacb", 23:81) > (fmla <- as.formula(paste("lwage ~ ", paste(lvadd, collapse = "+")))) > fit <- lm(fmla, data = wageszm14)Error in eval(predvars, data, env) : object 'lvacb24' not found The variable lvacb24 doesn't exist, because from lvacb23 it jumps to lvacb30. Thanks in advance for any help. -- Rolando Valdez Facultad de Econom?a y Relaciones Internacionales Universidad Aut?noma de Baja California [[alternative HTML version deleted]]
peter dalgaard
2019-Jun-05 08:07 UTC
[R] Including a large number of variables in a formula.
Two ideas: nn <- names(wageszm14) lvadd <- nn[grep("^lvacb", nn)] or lvadd <- paste0("lvacb", 23:81) lvadd <- lvadd[lvadd %in% names(wageszm14)]> On 5 Jun 2019, at 06:46 , Rolando I. Valdez via R-help <r-help at r-project.org> wrote: > > Hello, > > I have almost 40 variables that I am trying to include in a formula. > > I tried to include them using as.formula(), however the variables do not > follow a patter in the name. e.g. These variables are named like: lvacb23 > lvacb30 lvacb300 lvacb40 ..... lvacb81. > >> lvadd <- paste0("lvacb", 23:81) >> (fmla <- as.formula(paste("lwage ~ ", paste(lvadd, collapse = "+")))) >> fit <- lm(fmla, data = wageszm14) > Error in eval(predvars, data, env) : object 'lvacb24' not found > > The variable lvacb24 doesn't exist, because from lvacb23 it jumps to > lvacb30. > > Thanks in advance for any help. > -- > Rolando Valdez > Facultad de Econom?a y Relaciones Internacionales > Universidad Aut?noma de Baja California > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see > 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.-- Peter Dalgaard, Professor, Center for Statistics, Copenhagen Business School Solbjerg Plads 3, 2000 Frederiksberg, Denmark Phone: (+45)38153501 Office: A 4.23 Email: pd.mes at cbs.dk Priv: PDalgd at gmail.com
Rolando I. Valdez
2019-Jun-06 18:58 UTC
[R] Including a large number of variables in a formula.
The first idea works perfect. Thank you!. El mi?., 5 jun. 2019 a las 1:07, peter dalgaard (<pdalgd at gmail.com>) escribi?:> Two ideas: > > nn <- names(wageszm14) > lvadd <- nn[grep("^lvacb", nn)] > > or > > lvadd <- paste0("lvacb", 23:81) > lvadd <- lvadd[lvadd %in% names(wageszm14)] > > > On 5 Jun 2019, at 06:46 , Rolando I. Valdez via R-help < > r-help at r-project.org> wrote: > > > > Hello, > > > > I have almost 40 variables that I am trying to include in a formula. > > > > I tried to include them using as.formula(), however the variables do not > > follow a patter in the name. e.g. These variables are named like: lvacb23 > > lvacb30 lvacb300 lvacb40 ..... lvacb81. > > > >> lvadd <- paste0("lvacb", 23:81) > >> (fmla <- as.formula(paste("lwage ~ ", paste(lvadd, collapse = "+")))) > >> fit <- lm(fmla, data = wageszm14) > > Error in eval(predvars, data, env) : object 'lvacb24' not found > > > > The variable lvacb24 doesn't exist, because from lvacb23 it jumps to > > lvacb30. > > > > Thanks in advance for any help. > > -- > > Rolando Valdez > > Facultad de Econom?a y Relaciones Internacionales > > Universidad Aut?noma de Baja California > > > > [[alternative HTML version deleted]] > > > > ______________________________________________ > > R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see > > 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. > > -- > Peter Dalgaard, Professor, > Center for Statistics, Copenhagen Business School > Solbjerg Plads 3, 2000 Frederiksberg, Denmark > Phone: (+45)38153501 > Office: A 4.23 > Email: pd.mes at cbs.dk Priv: PDalgd at gmail.com > > > > > > > > > >-- Rolando Valdez Facultad de Econom?a y Relaciones Internacionales Universidad Aut?noma de Baja California [[alternative HTML version deleted]]