Baru-baru ini saya belajar tentang menggunakan teknik bootstrap untuk menghitung kesalahan standar dan interval kepercayaan untuk estimator. Apa yang saya pelajari adalah bahwa jika data tersebut adalah IID, Anda dapat memperlakukan data sampel sebagai populasi, dan melakukan pengambilan sampel dengan penggantian dan ini akan memungkinkan Anda untuk mendapatkan beberapa simulasi statistik uji.
Dalam hal deret waktu, Anda jelas tidak bisa melakukan ini karena autokorelasi kemungkinan ada. Saya memiliki deret waktu dan ingin menghitung rata-rata data sebelum dan sesudah tanggal yang tetap. Apakah ada cara yang benar untuk melakukannya menggunakan versi bootstrap yang dimodifikasi?
time-series
bootstrap
statnub
sumber
sumber
Jawaban:
Seperti yang ditunjukkan oleh @ cardinal, variasi pada 'blok bootstrap' adalah pendekatan alami. Di sini, tergantung pada metodenya, Anda memilih rentangan dari deret waktu, baik tumpang tindih atau tidak dan dengan panjang tetap atau acak, yang dapat menjamin stasioneritas dalam sampel ( Politis dan Romano, 1991 ) lalu menjahitnya kembali bersama-sama untuk membuat deret waktu yang di-resampled. di mana Anda menghitung statistik Anda. Anda juga dapat mencoba membangun model dependensi temporal, yang mengarah ke metode Markov, saringan autoregresif, dan lainnya. Tetapi memblokir bootstrap mungkin merupakan metode yang paling mudah untuk diterapkan.
Gonçalves dan Politis (2011) adalah ulasan yang sangat singkat dengan referensi. Perlakuan panjang buku adalah Lahiri (2010) .
sumber
tsboot
dalamboot
paket di R untuk melakukan ini.Metode resampling diperkenalkan di Efron (1979) dirancang untuk data univariat iid tetapi mudah diperluas ke data multivariat. Sebagaimana dibahas dalam. Jika adalah sampel vektor, untuk mempertahankan struktur kovarian data dalam sampel. Tidak segera jelas apakah seseorang dapat melakukan rangkaian waktu . Rangkaian waktu pada dasarnya adalah sampel ukuran 1 dari proses stokastik. Resampling sampel adalah sampel asli, jadi orang tidak belajar apa pun dengan resampling. Oleh karena itu, resampling deret waktu memerlukan gagasan baru.x1,⋅⋅⋅,xn x1,x2,⋅⋅⋅,xn
Resampling berbasis model mudah diadopsi ke deret waktu. Sampel tersebut diperoleh dengan mensimulasikan model deret waktu. Sebagai contoh, jika modelnya adalah ARIMA (p, d, q), maka sampel model ARIMA (p, q) dengan MLEs (dari seri yang dibedakan) dari koefisien rata-rata autoregresif dan bergerak dan varians derau. Sampel adalah urutan jumlah parsial dari proses ARIMA yang disimulasikan (p, q).
Resampling bebas model dari deret waktu dilakukan dengan resampling blok, juga disebut blok bootstrap, yang dapat diimplementasikan menggunakan fungsi tsboot dalam paket boot R's. Idenya adalah untuk memecah seri menjadi blok yang kira-kira sama dengan panjang pengamatan berturut-turut, untuk menguji ulang blok dengan penggantian, dan kemudian menempelkan blok bersama-sama. Misalnya, jika deret waktu panjangnya 200 dan yang satu menggunakan 10 blok dengan panjang 20, maka blok itu adalah 20 pengamatan pertama, 20 berikutnya, dan seterusnya. Resample yang mungkin adalah blok keempat (observasi 61 hingga 80), kemudian blok terakhir (pengamatan 181 hingga 200), kemudian blok kedua (observasi 21 hingga 40), lalu blok keempat lagi, dan seterusnya hingga ada 10 blok dalam resample.
sumber