Recientemente aprendí sobre el uso de técnicas de arranque para calcular errores estándar e intervalos de confianza para estimadores. Lo que aprendí fue que si los datos son IID, puede tratar los datos de la muestra como la población, y hacer un muestreo con reemplazo y esto le permitirá obtener múltiples simulaciones de una estadística de prueba.
En el caso de series temporales, claramente no puede hacer esto porque es probable que exista autocorrelación. Tengo una serie temporal y me gustaría calcular la media de los datos antes y después de una fecha fija. ¿Hay una manera correcta de hacerlo usando una versión modificada de bootstrapping?
time-series
bootstrap
statnub
fuente
fuente
Respuestas:
Como señala @cardinal, las variaciones en el 'bloque de arranque' son un enfoque natural. Aquí, según el método, selecciona tramos de las series de tiempo, superpuestos o no y de longitud fija o aleatoria, lo que puede garantizar la estacionariedad en las muestras ( Politis y Romano, 1991 ) y luego volver a unirlas para crear series de tiempo remuestreadas en el que calculas tu estadística. También puede intentar construir modelos de las dependencias temporales, conduciendo a los métodos de Markov, tamices autorregresivos y otros. Pero el arranque en bloque es probablemente el método más fácil de implementar.
Gonçalves y Politis (2011) es una revisión muy corta con referencias. Un libro de larga duración es Lahiri (2010) .
fuente
tsboot
elboot
paquete en R para hacer esto.El remuestreo basado en modelos se adopta fácilmente en series temporales. Las muestras se obtienen simulando el modelo de serie temporal. Por ejemplo, si el modelo es ARIMA (p, d, q), entonces las muestras de un modelo ARIMA (p, q) con MLE (de la serie diferenciada) de los coeficientes de promedio móvil y autorregresivo y la varianza del ruido. Los resamples son las secuencias de suma parcial del proceso ARIMA simulado (p, q).
El remuestreo de series de tiempo sin modelo se logra mediante el remuestreo en bloque, también llamado bloque de arranque, que se puede implementar utilizando la función tsboot en el paquete de arranque de R. La idea es dividir la serie en bloques de aproximadamente la misma longitud de observaciones consecutivas, volver a muestrear el bloque con reemplazo y luego pegar los bloques juntos. Por ejemplo, si la serie temporal es de longitud 200 y uno usa 10 bloques de longitud 20, entonces los bloques son las primeras 20 observaciones, las siguientes 20, y así sucesivamente. Una posible nueva muestra es el cuarto bloque (observación 61 a 80), luego el último bloque (observación 181 a 200), luego el segundo bloque (observación 21 a 40), luego el cuarto bloque nuevamente, y así sucesivamente hasta que haya 10 bloques en el remuestreo.
fuente