Rolando Valdez
2019-Jun-02 23:00 UTC
[R-es] Incluir un rango de varias variables explicativas a un modelo
Hola, Quiero especificar una ecuación con varias variables explicativas de una manera eficiente sin necesidad de escribir todas y cada una. Tengo un conjunto de variables (junto con otras) dentro de una base de datos que se llaman pot23 pot311 pot312 pot 316 pot317........... pot80. No necesariamente están secuenciadas. Quisiera saber cómo indicar que incluya todas las variables de pot23 a pot80 en una ecuación. He intentado lo siguiente, pero no funciona:> pots <- paste("pot",23:321, sep="") > eqreg2 <- lwage~SEXO+EDAD+HLENGUA+ESCOACUM+marr+wageszm14[,pots] > fit <- qregspiv(eqreg2, shpfile = zm15, tau = 0.5, nboot = 70, data wageszm14)Error: Can't find columns `pot24`, `pot25`, `pot26`, `pot27`, `pot28`, ... (and 273 more) in `.data`. De igual forma, después estaría interesado en obtener el logaritmo de todas esas variables pot~ Gracias de antemano por cualquier tipo de ayuda. -- Rol~ [[alternative HTML version deleted]]
Carlos Ortega
2019-Jun-03 11:49 UTC
[R-es] Incluir un rango de varias variables explicativas a un modelo
Hola, Mira la función "*as.formula()*". Incluye un ejemplo muy parecido a lo que estás queriendo hacer. Saludos, Carlos Ortega www.qualityexcellence.es El lun., 3 jun. 2019 a las 1:00, Rolando Valdez (<rvaldezr en gmail.com>) escribió:> Hola, > > Quiero especificar una ecuación con varias variables explicativas de una > manera eficiente sin necesidad de escribir todas y cada una. Tengo un > conjunto de variables (junto con otras) dentro de una base de datos que se > llaman pot23 pot311 pot312 pot 316 pot317........... pot80. No > necesariamente están secuenciadas. Quisiera saber cómo indicar que incluya > todas las variables de pot23 a pot80 en una ecuación. > > He intentado lo siguiente, pero no funciona: > > > pots <- paste("pot",23:321, sep="") > > eqreg2 <- lwage~SEXO+EDAD+HLENGUA+ESCOACUM+marr+wageszm14[,pots] > > fit <- qregspiv(eqreg2, shpfile = zm15, tau = 0.5, nboot = 70, data > wageszm14) > Error: Can't find columns `pot24`, `pot25`, `pot26`, `pot27`, `pot28`, ... > (and 273 more) in `.data`. > > De igual forma, después estaría interesado en obtener el logaritmo de todas > esas variables pot~ > > Gracias de antemano por cualquier tipo de ayuda. > > -- > Rol~ > > [[alternative HTML version deleted]] > > _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es >-- Saludos, Carlos Ortega www.qualityexcellence.es [[alternative HTML version deleted]]
Rolando Valdez
2019-Jun-04 03:42 UTC
[R-es] Incluir un rango de varias variables explicativas a un modelo
Hola, gracias por la respuesta, No me funcionó debido a que los nombres de las variables no están seriadas, es decir, los nombres de las variables son del tipo: x23 x25 x30, x301 x320, x80. Entonces me da este error: Error in eval(predvars, data, env) : object 'pot24' not found. Debido a que pot24 no existe, ya que de pot23 se brinca a pot30. En Stata es algo muy simple de hacer, solo tengo que especificar gl indepvars "x23-x80" y ya. En R no logro hacerlo. ¿Alguna otra sugerencia? Gracias de antemano. El lun., 3 de jun. de 2019 a la(s) 04:50, Carlos Ortega ( cof en qualityexcellence.es) escribió:> Hola, > > Mira la función "*as.formula()*". > Incluye un ejemplo muy parecido a lo que estás queriendo hacer. > > Saludos, > Carlos Ortega > www.qualityexcellence.es > > El lun., 3 jun. 2019 a las 1:00, Rolando Valdez (<rvaldezr en gmail.com>) > escribió: > >> Hola, >> >> Quiero especificar una ecuación con varias variables explicativas de una >> manera eficiente sin necesidad de escribir todas y cada una. Tengo un >> conjunto de variables (junto con otras) dentro de una base de datos que se >> llaman pot23 pot311 pot312 pot 316 pot317........... pot80. No >> necesariamente están secuenciadas. Quisiera saber cómo indicar que incluya >> todas las variables de pot23 a pot80 en una ecuación. >> >> He intentado lo siguiente, pero no funciona: >> >> > pots <- paste("pot",23:321, sep="") >> > eqreg2 <- lwage~SEXO+EDAD+HLENGUA+ESCOACUM+marr+wageszm14[,pots] >> > fit <- qregspiv(eqreg2, shpfile = zm15, tau = 0.5, nboot = 70, data >> wageszm14) >> Error: Can't find columns `pot24`, `pot25`, `pot26`, `pot27`, `pot28`, ... >> (and 273 more) in `.data`. >> >> De igual forma, después estaría interesado en obtener el logaritmo de >> todas >> esas variables pot~ >> >> Gracias de antemano por cualquier tipo de ayuda. >> >> -- >> Rol~ >> >> [[alternative HTML version deleted]] >> >> _______________________________________________ >> R-help-es mailing list >> R-help-es en r-project.org >> https://stat.ethz.ch/mailman/listinfo/r-help-es >> > > > -- > Saludos, > Carlos Ortega > www.qualityexcellence.es >-- Rol~ [[alternative HTML version deleted]]
Jorge I Velez
2019-Jun-05 22:36 UTC
[R-es] Incluir un rango de varias variables explicativas a un modelo
Hola Rolando, Quizás subset() sea tu amigo en este caso. Intenta: ## selecciona la variable dependiente y las variables independientes d0 <- subset(wageszm14, select = c(lwage, SEXO:marr, pot23:pot317) ## ajusta el modelo fit <- qregspiv(lwage ~ ., shpfile = zm15, tau = 0.5, nboot = 70, data = d0) ## resultados summary(fit) Saludos, Jorge.- On Sun, Jun 2, 2019 at 6:00 PM Rolando Valdez <rvaldezr en gmail.com> wrote:> Hola, > > Quiero especificar una ecuación con varias variables explicativas de una > manera eficiente sin necesidad de escribir todas y cada una. Tengo un > conjunto de variables (junto con otras) dentro de una base de datos que se > llaman pot23 pot311 pot312 pot 316 pot317........... pot80. No > necesariamente están secuenciadas. Quisiera saber cómo indicar que incluya > todas las variables de pot23 a pot80 en una ecuación. > > He intentado lo siguiente, pero no funciona: > > > pots <- paste("pot",23:321, sep="") > > eqreg2 <- lwage~SEXO+EDAD+HLENGUA+ESCOACUM+marr+wageszm14[,pots] > > fit <- qregspiv(eqreg2, shpfile = zm15, tau = 0.5, nboot = 70, data > wageszm14) > Error: Can't find columns `pot24`, `pot25`, `pot26`, `pot27`, `pot28`, ... > (and 273 more) in `.data`. > > De igual forma, después estaría interesado en obtener el logaritmo de todas > esas variables pot~ > > Gracias de antemano por cualquier tipo de ayuda. > > -- > Rol~ > > [[alternative HTML version deleted]] > > _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es >[[alternative HTML version deleted]]