AR(1) Zaman Serileri Simüle Et
statsmodels içindeki arima_process modülünü kullanarak, her biri farklı bir \(\small \phi\) parametresine sahip birkaç AR(1) zaman serisini simüle edip görselleştireceksin. Bu egzersizde, biri büyük pozitif \(\small \phi\), diğeri büyük negatif \(\small \phi\) olacak iki AR(1) modeline bakacağız; ama istersen kendi parametrelerinle de denemeler yapabilirsin.
arima_process modülünü kullanırken birkaç konvansiyon var ve kısa bir açıklama gerekiyor. İlk olarak, bu yordamlar hem AR hem de MA modellerini ele alacak şekilde oldukça genel yazılmıştır. MA modellerini bir sonraki bölümde işleyeceğiz, şimdilik MA kısmını görmezden gelebilirsin. İkinci olarak, katsayıları girerken gecikme sıfır katsayısı olan 1’i mutlaka eklemelisin ve diğer katsayıların işareti, (işaret işleme literatüründeki zaman serisi geleneğiyle tutarlı olmak için) burada kullandığımızın tersidir. Örneğin, \(\small \phi=0.9\) olan bir AR(1) süreci için AR parametrelerini temsil eden dizi ar = np.array([1, -0.9]) olur
Bu egzersiz
Python ile Zaman Serisi Analizi
kursunun bir parçasıdırEgzersiz talimatları
arima_processmodülündekiArmaProcesssınıfını içe aktar.- Simüle edilen AR süreçlerini görselleştir:
ar1, yukarıda açıklandığı gibi AR parametrelerini [1, \(\small -\phi\)] şeklinde temsil eden bir dizi olsun. Şimdilik MA parametre dizisima1yalnızca gecikme-sıfır katsayısı olan bir içerecek.ar1vema1parametreleriyleArmaProcess(ar,ma)sınıfındanAR_object1adında bir örnek oluştur.- Az önce oluşturduğun
AR_object1nesnesinden.generate_sample()metodunu kullanarak 1000 veri noktası simüle et. Simüle edilen veriyi bir alt grafikte görselleştir.
- Diğer AR parametresi için aynı adımları tekrarla.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# import the module for simulating data
from statsmodels.tsa.arima_process import ArmaProcess
# Plot 1: AR parameter = +0.9
plt.subplot(2,1,1)
ar1 = np.array([1, ____])
ma1 = np.array([1])
AR_object1 = ArmaProcess(____, ____)
simulated_data_1 = AR_object1.generate_sample(nsample=1000)
plt.plot(simulated_data_1)
# Plot 2: AR parameter = -0.9
plt.subplot(2,1,2)
ar2 = np.array([1, ____])
ma2 = np.array([1])
AR_object2 = ArmaProcess(____, ____)
simulated_data_2 = AR_object2.generate_sample(nsample=1000)
plt.plot(simulated_data_2)
plt.show()