[R-es] Pasar nombre variable regresión

Griera
Thu, 18 Nov 2021 11:03:44 -0000

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.