[R-es] Pasar nombre variable regresión

Marcelino de la Cruz Rot
Thu, 18 Nov 2021 12:01:26 -0000

Hola:
Creo que lo que quieres es esto:

lm.D9 <- lm(weight ~ get(X))

Saludos,

Marcelino


El 18/11/2021 a las 12:03, Griera escribió:
> Hola, buenos días:
>
> No es un problema concreto que tenga ahora, pero es un problema general
> que no se si tiene solución fácil. Hago una regresión (de lm.html):
>
> ctl <- c(4.17,5.58,5.18,6.11,4.50,4.61,5.17,4.53,5.33,5.14)
> trt <- c(4.81,4.17,4.41,3.59,5.87,3.83,6.03,4.89,4.32,4.69)
> group <- gl(2, 10, 20, labels = c("Ctl","Trt"))
> weight <- c(ctl, trt)
> lm.D9 <- lm(weight ~ group)
>
> Si quiero que la variable independiente sea una "variable", y
hago:
>
> X = "group"
> lm.D9 <- lm(weight ~ X)
>
> Y da el error: Error in model.frame.default(formula = XVD ~ group,
drop.unused.levels = TRUE) :
>    variable lengths differ (found for 'group')
>
> Ya que, como me decían el otro día "estás asignando a la variable X el
valor "X" y no el
> contenido de la variable X."
>
> ¿No hay forma de que entienda que "X" es el nombre de la variable
independiente "group", que no sea pasar la posición de la variable?
>
> Muchas gracias y saludos a todos.
>
> _______________________________________________
> R-help-es mailing list
> R-help-es en r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
> .


--
Marcelino de la Cruz Rot
Depto. de Biología y Geología
Física y Química Inorgánica
Universidad Rey Juan Carlos
Móstoles España