Komponen Deret Waktu dan Stasioneritas
Tren, musiman, derau, uji ADF untuk stasioneritas, pembedaan untuk mencapai stasioneritas.
Komponen Deret Waktu dan Stasioneritas adalah pelajaran Learn AI with Python gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Learn AI with Python, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Learn AI with Python mencakup 4 pelajaran total.
Apa Itu Deret Waktu?
Deret waktu adalah data yang diindeks berdasarkan urutan waktu, seperti penjualan harian atau suhu per jam. Karena pengamatan tersusun berurutan dan sering berkorelasi, diperlukan teknik khusus; Anda tidak dapat mengacak barisnya begitu saja seperti pada data berbentuk tabel biasa.
Tiga Komponen
Pandangan klasik menguraikan sebuah deret menjadi:
- Tren: pergerakan jangka panjang ke arah naik atau turun.
- Pola musiman: pola berulang pada periode tetap, seperti mingguan atau tahunan.
- Residu: derau acak yang tersisa setelah tren dan pola musiman dihilangkan.
Aditif vs Multiplikatif
Dalam model aditif: y = trend + seasonality + residual, model ini digunakan ketika perubahan musiman berukuran tetap.
Dalam model multiplikatif: y = trend * seasonality * residual, model ini digunakan ketika perubahan musiman membesar seiring tren.
seasonal_decompose
statsmodels dapat memisahkan sebuah deret menjadi komponen-komponennya secara otomatis.
from statsmodels.tsa.seasonal import seasonal_decompose
result = seasonal_decompose(series, model="additive", period=12)
result.trend
result.seasonal
result.residMemvisualisasikan Penguraian
Membuat grafik hasilnya menampilkan setiap komponen secara bertumpuk, sehingga tren dan pola musiman mudah dilihat serta membantu Anda memilih pendekatan prakiraan.
import matplotlib.pyplot as plt
result.plot()
plt.tight_layout()
plt.show()Apa Itu Stasioneritas?
Sebuah deret bersifat stasioner ketika sifat statistiknya, seperti rata-rata, varians, dan autokorelasi, tetap konstan sepanjang waktu. Banyak model klasik seperti ARIMA mengasumsikan stasioneritas, sehingga memeriksa dan memastikannya merupakan langkah awal yang penting.
Mengapa Stasioneritas Penting
Jika rata-rata bergeser atau varians melonjak seiring waktu, model yang disesuaikan dengan data awal tidak akan berlaku baik pada data berikutnya. Menghilangkan tren dan menstabilkan varians membuat deret dapat diprakirakan secara konsisten.
Uji ADF
Uji Dickey-Fuller Diperluas (ADF) memeriksa stasioneritas. Hipotesis nolnya adalah "tidak stasioner (memiliki akar satuan)". Nilai-p di bawah 0,05 memungkinkan Anda menolak hipotesis nol dan menganggap deret tersebut stasioner.
from statsmodels.tsa.stattools import adfuller
stat, pvalue, *_ = adfuller(series)
print("p-value:", pvalue)
# pvalue < 0.05 -> stationaryDiferensiasi untuk Mencapai Stasioneritas
Diferensiasi mengurangkan setiap nilai dari nilai sebelumnya untuk menghilangkan tren. Diferensiasi orde pertama biasanya menangani tren linear; terapkan lagi jika diperlukan.
diff1 = series.diff().dropna() # first difference
diff2 = series.diff().diff().dropna() # second differenceMengonfirmasi Setelah Diferensiasi
Jalankan kembali uji ADF pada deret hasil diferensiasi. Setelah nilai-p turun di bawah 0,05, Anda telah mencapai stasioneritas dan mencatat orde diferensiasi d, yang langsung digunakan dalam ARIMA.
stat, pvalue, *_ = adfuller(series.diff().dropna())
print("p-value after differencing:", pvalue)Transformasi Penstabil Lainnya
Jika varians bertambah seiring waktu, transformasi log atau Box-Cox menstabilkannya sebelum diferensiasi. Menggabungkan transformasi log dengan diferensiasi dapat menangani banyak deret dunia nyata dengan pertumbuhan multiplikatif.
import numpy as np
log_series = np.log(series)
stationary = log_series.diff().dropna()Pemeriksaan Singkat
Uji pemahaman Anda tentang stasioneritas.
Rangkuman
Anda telah menguraikan deret menjadi tren, pola musiman, dan residu dengan seasonal_decompose, mempelajari model aditif dan multiplikatif, menguji stasioneritas dengan uji ADF, serta menggunakan diferensiasi (orde d) untuk membuat deret menjadi stasioner. Berikutnya: ARIMA dan SARIMA.
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Komponen Deret Waktu dan Stasioneritas” gratis?
Ya — teks lengkap “Komponen Deret Waktu dan Stasioneritas” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Learn AI with Python, upgrade ke CoddyKit PRO. Kursus Learn AI with Python mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Komponen Deret Waktu dan Stasioneritas”?
Tren, musiman, derau, uji ADF untuk stasioneritas, pembedaan untuk mencapai stasioneritas. Kamu berlatih Learn AI with Python dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Learn AI with Python?
Tidak diperlukan pengalaman sebelumnya. Learn AI with Python di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.
Berapa lama pelajaran “Komponen Deret Waktu dan Stasioneritas” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Learn AI with Python ini?
Ya. Setiap pelajaran Learn AI with Python menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Komponen Deret Waktu dan Stasioneritas
- Model ARIMA dan SARIMA
- Prophet untuk Peramalan Otomatis
- LSTM untuk Peramalan Deret Waktu