En inglés simple: tengo un modelo de regresión múltiple o ANOVA, pero la variable de respuesta para cada individuo es una función curvilínea del tiempo.
- ¿Cómo puedo saber cuál de las variables del lado derecho es responsable de las diferencias significativas en las formas o los desplazamientos verticales de las curvas?
- ¿Es este un problema de series de tiempo, un problema de medidas repetidas o algo completamente diferente?
- ¿Cuáles son las mejores prácticas para analizar dichos datos (preferiblemente en
R
, pero estoy abierto a usar otro software)?
En términos más precisos: Digamos que tengo un modelo pero es en realidad una serie de puntos de datos recopilados de mismo individuo en muchos puntos de tiempo , que se registraron como una variable numérica. El trazado de los datos muestra que para cada individuo es una función de tiempo cuadrática o cíclica cuyo desplazamiento vertical, forma o frecuencia (en el caso cíclico) podría depender significativamente de las covariables. Las covariables no cambian con el tiempo, es decir, un individuo tiene un peso corporal constante o un grupo de tratamiento durante el período de recopilación de datos.
Hasta ahora he intentado los siguientes R
enfoques:
Manova
Anova(lm(YT~A*B,mydata),idata=data.frame(TIME=factor(c(1:10))),idesign=~TIME);
... donde
YT
hay una matriz cuyas columnas son los puntos de tiempo, 10 de ellas en este ejemplo, pero mucho más en los datos reales.Problema: esto trata el tiempo como un factor, pero los puntos de tiempo no coinciden exactamente para cada individuo. Además, hay muchos de ellos en relación con el tamaño de la muestra, por lo que el modelo se satura. Parece que se ignora la forma de la variable de respuesta a lo largo del tiempo.
Modelo mixto (como en Pinheiro y Bates, Modelos de efectos mixtos en S y S-Plus )
lme(fixed=Y~ A*B*TIME + sin(2*pi*TIME) + cos(2*pi*TIME), data=mydata, random=~(TIME + sin(2*pi*TIME) + cos(2*pi*TIME))|ID), method='ML')
... donde
ID
es un factor que agrupa los datos por individuo. En este ejemplo, la respuesta es cíclica a lo largo del tiempo, pero podría haber términos cuadráticos u otras funciones del tiempo.Problema: no estoy seguro de si cada término de tiempo es necesario (especialmente para términos cuadráticos) y cuáles son afectados por qué covariables.
- ¿Es
stepAIC()
un buen método para seleccionarlos? - Si elimina un término dependiente del tiempo, ¿también lo eliminará del
random
argumento? - ¿Qué
corEXP()
sucede si también uso una función de autocorrelación (como ) que toma una fórmula en elcorrelation
argumento, ¿debo hacer que la fórmula seacorEXP()
igual a la que está enrandom
o solo~1|ID
? - El
nlme
paquete rara vez se menciona en el contexto de series de tiempo fuera de Pinheiro y Bates ... ¿no se considera adecuado para este problema?
- ¿Es
Ajustar un modelo cuadrático o trigonométrico a cada individuo y luego usar cada coeficiente como variable de respuesta para regresión múltiple o ANOVA.
Problema: es necesaria una corrección de comparación múltiple. No puedo pensar en ningún otro problema que me haga sospechar que estoy pasando por alto algo.
Como se sugirió anteriormente en este sitio ( ¿Cuál es el término para una regresión de series de tiempo que tiene más de un predictor? ), Existen ARIMAX y modelos de función de transferencia / regresión dinámica .
Problema: los modelos basados en ARMA asumen tiempos discretos, ¿no? En cuanto a la regresión dinámica, lo escuché por primera vez hoy, pero antes de profundizar en otro método nuevo que podría no funcionar después de todo, pensé que sería prudente pedir consejo a las personas que han hecho esto antes.
Respuestas:
Como dijo Jeromy Anglim, sería útil saber la cantidad de puntos de tiempo que tiene para cada individuo; como dijiste "muchos", me aventuraría a que el análisis funcional podría ser una alternativa viable. Es posible que desee consultar el paquete R de la FDA y mirar el libro de Ramsay y Silverman .
fuente
nlme
enfoques más familiares (elementos 2 y 3 en el OP) al menos válidos para usar en los datos por el momento?Desde que originalmente planteé esta pregunta, llegué a la conclusión de que los modelos de efectos mixtos con sujetos como factor de bloqueo aleatorio son la solución práctica a este problema, es decir, la opción # 2 en mi publicación original. Si el
random
argumento tolme
se establece en~1|ID
(dondeID
identifica las observaciones que provienen del mismo sujeto de prueba), entonces se ajusta un modelo de intercepción aleatoria. Si se establece en, se ajusta~TIME|ID
un modelo aleatorio de pendiente e intercepción. Cualquier fórmula del lado derecho que contenga variables que varían dentro del mismo individuo se puede colocar entre~
y|ID
, pero las fórmulas demasiado complicadas darán como resultado un modelo saturado y / o varios errores numéricos. Por lo tanto, uno puede usar una prueba de razón de verosimilitud (anova(myModel, update(myModel,random=~TIME|ID))
) para comparar un modelo de intercepción aleatorio con un modelo de pendiente e intercepción aleatorio u otros modelos de efectos aleatorios candidatos. Si la diferencia en el ajuste no es significativa, entonces quédese con el modelo más simple. Fue excesivo para mí entrar en funciones trigonométricas aleatorias en mi publicación original.La otra cuestión que planteé fue la de la selección del modelo. Parece que a la gente no le gusta la selección de modelos de ningún tipo, pero nadie tiene alternativas prácticas. Si cree ciegamente al investigador que recopiló los datos sobre qué variables explicativas son y no son relevantes, a menudo aceptará ciegamente sus supuestos no probados. Si tiene en cuenta cada bit de información posible, a menudo terminará con un modelo saturado. Si elige arbitrariamente un modelo y variables particulares porque son fáciles, volverá a aceptar supuestos no probados, esta vez los suyos.
Entonces, en resumen, para medidas repetidas son
lme
modelos seguidos de recortes medianteMASS:::stepAIC
oMuMIn:::dredge
y / onlme:::anova.lme
hasta y a menos que alguien tenga una mejor idea.Dejaré esta respuesta por un tiempo antes de aceptarla para ver si alguien tiene alguna refutación. Gracias por su tiempo, y si está leyendo esto porque tiene el mismo tipo de pregunta que tengo, buena suerte y bienvenido a territorio semi-inexplorado.
fuente