2009-11-11 14 views
33

Quiero hacer encajar algún tipo de multivariable modelo de series de tiempo usando R.multivariado modelado de series temporales en I

Aquí está una muestra de mis datos:

u  cci  bci  cpi  gdp dum1 dum2 dum3 dx 
16.50 14.00 53.00 45.70 80.63 0 0 1  6.39 
17.45 16.00 64.00 46.30 80.90 0 0 0  6.00 
18.40 12.00 51.00 47.30 82.40 1 0 0  6.57 
19.35 7.00 42.00 48.40 83.38 0 1 0  5.84 
20.30 9.00 34.00 49.50 84.38 0 0 1  6.36 
20.72 10.00 42.00 50.60 85.17 0 0 0  5.78 
21.14 6.00 45.00 51.90 85.60 1 0 0  5.16 
21.56 9.00 38.00 52.60 86.14 0 1 0  5.62 
21.98 2.00 32.00 53.50 86.23 0 0 1  4.94 
22.78 8.00 29.00 53.80 86.24 0 0 0  6.25 

los datos es trimestral, el las variables ficticias son para la estacionalidad.

Lo que me gustaría hacer es predecir dx con referencia a algunos de los otros, mientras que (posiblemente) lo que permite la estacionalidad. Por razones de argumento, digamos que quiero usar "u", "cci" y "gdp".

¿Cómo voy a hacer esto?

Respuesta

92

Si aún no lo ha hecho, eche un vistazo a the time series view on CRAN, especialmente la sección de series temporales multivariables.

En las finanzas, una forma tradicional de hacer esto es con un modelo de factores, con frecuencia, ya sea con un modelo tipo BARRA o Fama y French. El número "Modeling financial time series with S-PLUS" de Eric Zivot ofrece una buena visión general de estos temas, pero no es transferible inmediatamente al "Analysis of Financial Time Series" de R. Ruey Tsay (disponible en el paquete TSA en CRAN). También contiene una agradable discusión sobre modelos de factores y análisis de componentes principales en el capítulo 9 .

R también tiene una serie de paquetes que cubren vector autoregression (VAR) modelos. En particular, recomendaría consultar el paquete VAR Modelling (vars) de Bernhard Pfaff y the related vignette.

os recomiendo mirar Ruey Tsay's homepage porque cubre todos estos temas, y proporciona el código R es necesario. En particular, consulte los cursos "Applied Multivariate Analysis", "Analysis of Financial Time Series" y "Multivariate Time Series Analysis".

Este es un tema muy grande y hay muchos buenos libros que lo cubren, incluyendo tanto multivariante forcasting serie temporal y la estacionalidad. Éstos son algunos más:

  1. Kleiber y Zeileis. "Applied Econometrics with R" no aborda esto específicamente, pero cubre muy bien el tema general (consulte también el paquete de AER en CRAN).
  2. Shumway and Stoffer. "Time Series Analysis and Its Applications: With R Examples" tiene ejemplos de modelos ARIMA multivariados.
  3. Cryer. "Time Series Analysis: With Applications in R" es un clásico sobre el tema, actualizado para incluir el código R.
3

No sé si esta funcionalidad estaba disponible cuando hizo esta pregunta por primera vez, pero esto está fácilmente disponible en la base R ahora con la función arima; simplemente especifique sus regresores externos con el argumento xreg dentro de la función. Pruebe ?arima y cuando lea la documentación preste especial atención al argumento xreg. Esto se ha hecho muy fácil, buena suerte.

+2

De acuerdo con la documentación, Arima solo admite series de tiempo univariadas. OP tiene una serie temporal multivariante. – mhwombat

6

En el paquete de previsión, intente:

arima(df[,1:4], order=(0,0,0), xreg=df[,6:8]) 

para pronosticar u, cci y gdp.

Para predecir dx de eso, prueba el modelo VAR. Aquí hay un buen tutorial (PDF).

+1

me temo que esto no está funcionando; mensaje de error: "Error en arima (datos [, 1: 4], orden = c (0, 0, 0), xreg = datos [, 6: 8]): implementado solo para series temporales univariadas" – xhudik

+0

Sí, es solo para univariado y no olvides 'order = c (0,0,0)' –

Cuestiones relacionadas