18 votos

Series temporales multivariantes en R. Cómo hallar la correlación retardada y construir un modelo de previsión

Soy nuevo en la página y bastante novato en estadística y R. Estoy trabajando en un proyecto para la universidad con el objetivo de encontrar la correlación entre la lluvia y el nivel de caudal de los ríos. Una vez comprobada la correlación quiero pronosticarla/predecirla.

Los datos Tengo un conjunto de datos de varios años(tomados cada 5 minutos) para un determinado ríos que contienen:

  • Precipitaciones en milímetros
  • Caudal del río en metros cúbicos por segundo

Este río no tiene nieve, así que el modelo sólo se basa en la lluvia y el tiempo. De vez en cuando hay temperaturas bajo cero, pero estoy pensando en eliminar esos periodos de los datos como valores atípicos, ya que esa situación está fuera del alcance de mi proyecto.

Ejemplos Aquí tienes un par de gráficos de datos de muestra de una lluvia y la subida del agua unas horas más tarde.

Bigger example a few days

Shorter example just one rainfall period

La línea roja es el caudal del río. La naranja es la lluvia. Se puede ver que siempre llueve antes de que el agua suba al río. Vuelve a llover al final de la serie temporal, pero afectará al caudal del río más tarde.

La correlación está ahí. Esto es lo que he hecho en R para probar la correlación usando ccf en R:

  • la correlación cruzada
  • la variable principal
  • el retraso

Esta es mi línea R utilizada para el segundo ejemplo (un periodo de precipitaciones):

ccf(arnoiaex1$Caudal, arnoiaex1$Precip, lag.max=1000, plot=TRUE, main="Flow & Rain")

ccf result for small example 2

Mi interpretación es:

  • que la lluvia lidera (ocurre primero),
  • existe una correlación significativa que alcanza su punto máximo con un desfase de $\approx 450$ (Puedo comprobar el número exacto, conozco esa parte).
  • No sé cómo averiguar el tiempo que la correlación afecta al caudal del río, creo que se llama "retención". Lo que veo es que la gráfica sigue la misma forma de la primera gráfica, cuando el río pierde el agua después de la lluvia. No se si basandome en eso puedo decir que la retencion dura de $\approx 450$ cuando alcanza su punto máximo a $\approx 800$ (Puedo comprobarlo en el objeto creado en el marco de datos devuelto por ccf y ver cuando el nivel de agua vuelve al valor de "antes de la lluvia". ¿Es correcto? ¿Hay una forma mejor de encontrar la retención?

¿Estoy en lo cierto?

Acerca de las series temporales . Esta serie temporal no tiene periodicidad ni estacionalidad. La lluvia puede llegar en cualquier momento y causar un efecto. Se reduce en verano, pero sigue ocurriendo, es una zona con mucha lluvia todo el año.

Modelo y previsión. No sé cómo crear un modelo para poder hacer una previsión que me diga cuánto va a aumentar el caudal de un río después de un periodo de lluvias. He estado probando algunos arima , auto arima pero no han tenido mucho éxito. ¿Debería utilizar Arima , vars u otro modelo multivariante diferente? Cualquier enlace a un ejemplo sería de gran ayuda.

Por favor, dígame si conoce la mejor manera de crear esta predicción, qué modelo debo utilizar. Hay algunas otras cosas que estoy considerando hacer pero las he sacado de esta explicación por simplicidad. Puedo compartir algunos datos si es necesario.

0 votos

Busca análisis de intervenciones (el subconjunto se denomina "estudios de sucesos" en estudios sociales)

4voto

soshelp Puntos 45

Debe utilizar los comportamientos ACF y PACF para determinar qué modelo se adapta mejor a sus datos (por ejemplo, la existencia de un decaimiento lento en el gráfico ACF indica que podría ser necesaria una diferenciación para que la serie sea más estable. Su gráfico ACF muestra obviamente que se necesita algún tipo de transformación. La fluctuación tiene que ser menos variada y estar dentro de las líneas azules si utiliza la transformación correcta (serie estacionaria). Una vez que hayas hecho que tu serie sea estacionaria, piensa qué modelo AR, MA, ARMA o ARIMA es el adecuado. En mi proyecto hice lo siguiente para ayudar en la selección del modelo:

El gráfico ACF muestra un valor relativamente grande en el retardo 2 ( ver dónde está esto en su parcela ). Aparte de eso, se convierte esencialmente en cero en rezagos superiores a dos. Esto sugiere que un modelo MA(2) puede ajustarse a los datos y, a continuación, observando el gráfico PACF, nos damos cuenta inmediatamente de que la correlación es cero casi en todos los retardos. Esto puede sugerir que el modelo no tiene ninguna parte AR ( ajústelo a su parcela ). Por lo tanto, uno de nuestros modelos candidatos podría ser un ARIMA (p, d, q) con parámetros p=0, d=1, y q=1 o2. También probé algunos órdenes superiores de MA y consideré alguna posibilidad de tener una parte AR en el modelo para comparar los resultados de AIC, AICc, y BIC y decidir el modelo final. El siguiente paso es realizar algunas pruebas de diagnóstico para asegurarse de que ha elegido el modelo correcto y de que no hay ningún patrón en los residuos (ACF y PACF para los residuos, valor p para el estadístico de Ljung-Box, histograma para los residuos y gráfico Q-Q). Espero que le sirva de ayuda.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X