Quiero ejecutar una regresión con un conjunto de variables independientes de mi conjunto de datos. Hay muchos predictores, así que no quiero escribirlos todos. ¿Hay una notación para abarcar varias columnas para que no tenga que escribir cada una?Cómo hacer una regresión de una serie de variables sin escribir cada nombre de variable
Mi intento estaba haciendo esto (donde mis predictores son la columna 20 a 43):
modelAllHexSubscales = lm(HHdata$garisktot~HHdata[,20:43])
Obviamente, esto no funciona porque HHdata[,20:43]
es una matriz de datos, mientras que realmente lo necesito para ver los datos como HHdata[,20]+HHdata[,21]
etc.
Quizás de interés: supe ayer que este truco de la construcción de la fórmula como una cadena y luego convertir a fórmula también funciona si incluye transformaciones. p.ej. en el ejemplo anterior, reemplace 'colnames (HHdata) [20:43]' con 'sapply (colnames (HHdata) [20:43], function (cc) {gsub (" X ", cc," I (X^2) ", fijo = VERDADERO)})'. –
Excepto que use '" I() "' generará resultados estadísticos engañosos. Aprende a usar 'poly'. –
'poly', a su vez, no funciona cuando faltan valores, a menos que use' raw = TRUE' - pero para mí, el resultado (¿o qué quiso decir con _output_?) Es el mismo. – Daniel