MulaiMulai sekarang secara gratis

Menghitung autokorelasi

Autokorelasi atau korelasi bertunda digunakan untuk menilai apakah suatu deret waktu bergantung pada masa lalunya. Untuk deret waktu x dengan panjang n, kita mempertimbangkan n-1 pasangan observasi yang berjarak satu satuan waktu. Pasangan pertama adalah (x[2],x[1]), dan berikutnya (x[3],x[2]). Setiap pasangan berbentuk (x[t],x[t-1]) dengan t sebagai indeks observasi, yang kita variasikan dari 2 sampai n pada kasus ini. Autokorelasi lag-1 dari x dapat diestimasi sebagai korelasi sampel dari pasangan (x[t], x[t-1]) tersebut.

Secara umum, kita dapat membuat pasangan observasi ini secara manual. Pertama, buat dua vektor, x_t0 dan x_t1, masing-masing dengan panjang n-1, sehingga setiap baris merepresentasikan pasangan (x[t], x[t-1]). Lalu terapkan fungsi cor() untuk mengestimasi autokorelasi lag-1.

Untungnya, perintah acf() menyediakan jalan pintas. Menerapkan acf(..., lag.max = 1, plot = FALSE) pada deret x secara otomatis menghitung autokorelasi lag-1.

Terakhir, perhatikan bahwa kedua estimasi sedikit berbeda karena menggunakan penskalaan yang sedikit berbeda dalam perhitungan kovarians sampel, 1/(n-1) versus 1/n. Meskipun yang terakhir menghasilkan estimasi bias, pendekatan tersebut lebih disukai dalam analisis deret waktu, dan estimasi autokorelasi yang dihasilkan hanya berbeda sebesar faktor (n-1)/n.

Dalam latihan ini, Anda akan mempraktikkan perhitungan autokorelasi lag-1 secara manual dan otomatis. Deret waktu x dan panjangnya n (150) telah dimuat. Deret tersebut ditampilkan pada plot di sebelah kanan.

Latihan ini adalah bagian dari kursus

Analisis Deret Waktu dengan R

Lihat Kursus

Petunjuk latihan

  • Buat dua vektor, x_t0 dan x_t1, masing-masing dengan panjang n-1 sehingga setiap baris merepresentasikan pasangan (x[t], x[t-1]).
  • Konfirmasikan bahwa x_t0 dan x_t1 adalah pasangan (x[t], x[t-1]) menggunakan kode yang sudah disiapkan.
  • Gunakan plot() untuk melihat scatterplot x_t0 dan x_t1.
  • Gunakan cor() untuk melihat korelasi antara x_t0 dan x_t1.
  • Gunakan acf() dengan x untuk otomatis menghitung autokorelasi lag-1. Atur argumen lag.max ke 1 untuk menghasilkan satu periode lag dan atur argumen plot ke FALSE.
  • Konfirmasikan bahwa faktor perbedaannya adalah (n-1)/n menggunakan kode yang sudah disiapkan.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Define x_t0 as x[-1]
x_t0 <- 

# Define x_t1 as x[-n]
x_t1 <- 

# Confirm that x_t0 and x_t1 are (x[t], x[t-1]) pairs  
head(cbind(x_t0, x_t1))
  
# Plot x_t0 and x_t1
plot(___, ___)

# View the correlation between x_t0 and x_t1
cor(___, ___)

# Use acf with x
acf(___, lag.max = ___, plot = ___)

# Confirm that difference factor is (n-1)/n
cor(x_t1, x_t0) * (n-1)/n
Edit dan Jalankan Kode