Estimasi Orde Model: PACF
Salah satu alat yang berguna untuk mengidentifikasi orde model AR adalah dengan melihat Partial Autocorrelation Function (PACF). Pada latihan ini, Anda akan mensimulasikan dua deret waktu, yaitu AR(1) dan AR(2), lalu menghitung PACF sampel untuk masing-masing. Anda akan melihat bahwa untuk AR(1), PACF seharusnya memiliki nilai lag-1 yang signifikan, dan kira-kira nol setelahnya. Untuk AR(2), PACF sampel seharusnya memiliki nilai lag-1 dan lag-2 yang signifikan, dan nol setelah itu.
Sama seperti Anda menggunakan fungsi plot_acf pada latihan sebelumnya, di sini Anda akan menggunakan fungsi bernama plot_pacf dalam modul statsmodels.
Latihan ini adalah bagian dari kursus
Analisis Deret Waktu dengan Python
Petunjuk latihan
- Impor modul untuk mensimulasikan data dan untuk memplot PACF
- Simulasikan AR(1) dengan \(\small \phi=0.6\) (ingat bahwa tanda untuk parameter AR dibalik)
- Plot PACF untuk
simulated_data_1menggunakan fungsiplot_pacf - Simulasikan AR(2) dengan \(\small \phi_1=0.6, \phi_2=0.3\) (sekali lagi, balik tandanya)
- Plot PACF untuk
simulated_data_2menggunakan fungsiplot_pacf
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Import the modules for simulating data and for plotting the PACF
from statsmodels.tsa.arima_process import ArmaProcess
from statsmodels.graphics.tsaplots import plot_pacf
# Simulate AR(1) with phi=+0.6
ma = np.array([1])
ar = np.array([1, -0.6])
AR_object = ArmaProcess(ar, ma)
simulated_data_1 = ___.generate_sample(nsample=5000)
# Plot PACF for AR(1)
plot_pacf(___, lags=20)
plt.show()
# Simulate AR(2) with phi1=+0.6, phi2=+0.3
ma = np.array([1])
ar = np.array([1, ___, ___])
AR_object = ArmaProcess(ar, ma)
simulated_data_2 = ___.generate_sample(nsample=5000)
# Plot PACF for AR(2)
plot_pacf(___, lags=20)
plt.show()