Pada chapter Line Chart kita mengikuti harga beras enam bulan pertama dan membacanya sebagai satu kisah pergerakan, bukan sekumpulan angka lepas. Section ini memperpanjang kisah tersebut menjadi dua belas bulan penuh, lalu mulai bertanya seperti seorang analis: ke mana arah harga bergerak, pola apa yang berulang, dan seberapa jauh prediksi kita bisa dipercaya. Data yang terurut waktu — time series — menuntut cara berpikir dan alat hitung yang berbeda dari data pada Section Statistika Deskriptif, karena urutan antar observasi kini menjadi informasi tersendiri. Chapter pembuka ini memperkenalkan anatomi deret waktu, membedakannya dari data cross-sectional, dan menyiapkan dua dataset pendamping yang akan menemani kita hingga chapter Evaluasi Forecast: harga beras bulanan dan penjualan es krim kuartalan.

Apa Itu Time Series #

Time series adalah barisan observasi yang dicatat berurutan menurut waktu pada interval teratur — satu nilai untuk setiap periode. Observasi pada periode t kita tulis Yt, sehingga dua belas bulan harga beras kita adalah Y1 sampai Y12. Jarak antar observasi disebut frekuensi data, dan frekuensi menentukan makna “berdekatan”: pada data bulanan yang bersambung adalah bulan ke bulan, sedangkan pada data kuartalan yang bersambung adalah kuartal ke kuartal. Aturan interval teratur ini bukan formalitas — chapter Line Chart telah menunjukkan bahwa interval yang tidak seragam membuat kemiringan garis berhenti mewakili laju perubahan yang sesungguhnya.

FrekuensiContoh pemakaianPeriode musiman yang lazim
Hariansuhu kota, kunjungan aplikasisatu minggu atau satu tahun
Bulananharga komoditas BPS, penjualan ritelsatu tahun (12 bulan)
Kuartalanpenjualan kafe, kunjungan wisatasatu tahun (4 kuartal)

Contoh di Indonesia sangat dekat dengan keseharian: harga komoditas yang dirilis BPS , kunjungan wisatawan, penjualan ritel, dan catatan cuaca. Dataset utama kita meniru rilis harga tersebut — harga rata-rata beras per kilogram di sebuah pasar selama dua belas bulan, lanjutan langsung dari enam bulan yang kita gambar pada chapter Line Chart:

BulanHarga (Rp/kg)BulanHarga (Rp/kg)
Jan12500Jul13600
Feb12800Agu13900
Mar12700Sep13800
Apr13100Okt14200
Mei13400Nov14500
Jun13300Des14400

Dua sifat langsung terbaca dari tabel. Pertama, harga bergerak naik dari 12500 menjadi 14400 — kenaikan 1900 Rp dalam satu tahun. Kedua, kenaikan itu tidak rata: harga sempat turun tipis pada Mar, Jun, Sep, dan Des, sebuah pola ulang setiap tiga bulan yang akan kita perlakukan sebagai fluktuasi musiman ringan. Data ini fiktif dan dibuat untuk latihan, dengan pola yang meniru perilaku harga komoditas sungguhan.

Deret Waktu vs Data Cross-Sectional #

Sejauh Section Statistika Deskriptif, kita bekerja dengan data cross-sectional: observasi yang dikumpulkan pada satu titik waktu dan saling independen. Nilai ulangan sembilan siswa pada chapter Mean adalah contohnya — nilai satu siswa tidak membawa informasi tentang nilai siswa lain, sehingga mengurutkan ulang barisannya tidak mengubah informasi apa pun, dan mean 83.33 berdiri sebagai ringkasan yang sah untuk seluruh kelompok.

Deret waktu bertolak belakang: observasinya bersambung. Harga beras bulan ini lahir dari kondisi bulan lalu — panen, stok, permintaan — sehingga nilai Yt dan Yt-1 saling berkaitan. Keterkaitan antar observasi yang dipisahkan selang waktu disebut autokorelasi, dan pada data beras kita autokorelasi antar bulan berurutan sangat kuat, sekitar +0.94 bila dihitung dengan teknik Pearson dari chapter Korelasi. Konsekuensinya praktis: mean seluruh dua belas bulan tetap bisa dihitung (13516.67 Rp/kg), tetapi maknanya berubah menjadi rata-rata level setahun, bukan perkiraan harga bulan berikutnya — sebab level harga itu sendiri sedang bergerak naik.

Empat Komponen Deret Waktu #

Analisis deret waktu pada dasarnya adalah pekerjaan memecah Yt menjadi beberapa sumber pergerakan. Panduan seperti NIST/SEMATECH e-Handbook merinci sumber-sumber tersebut; bentuk ringkasnya adalah sebagai berikut:

KomponenCiriContoh
Tren (T)arah pergerakan jangka panjangharga beras naik 1900 Rp sepanjang tahun
Musiman (S)pola berulang dengan periode tetapes krim naik setiap kuartal panas, turun setiap kuartal hujan
Siklusgelombang naik-turun dengan periode tidak tetapnaik-turun ekonomi berjangka beberapa tahun
Noise / residual (R)sisa fluktuasi yang tidak berpolaselisih harga bulanan yang tidak bisa dijelaskan

Hubungan paling sederhana antar komponen ditulis secara aditif:

text
Yt = Tt + St + Rt

Tt adalah tren, St musiman, dan Rt residual pada periode t. Chapter Tren dan Musiman mengukur dua komponen pertama secara terpisah, chapter Moving Average meredam noise, dan chapter Time Series Decomposition menyusun seluruhnya menjadi satu prosedur utuh. Siklus kita perlakukan secara konseptual saja, sebab membedakannya dari musiman menuntut deret yang jauh lebih panjang daripada contoh kita.

Stasioneritas: Ketika Mean Berpindah #

Deret waktu disebut stasioner bila mean dan variansnya konstan sepanjang waktu — level tidak berpindah dan sebaran tidak melebar. Uji kasar yang bisa dilakukan siapa pun adalah membandingkan statistik paruh awal dengan paruh akhir. Pada beras kita, mean Jan-Jun adalah 12966.67 Rp/kg — angka yang sama dengan rata-rata enam bulan pada chapter Line Chart — sedangkan mean Jul-Des naik ke 14066.67 Rp/kg. Mean yang berpindah sejauh 1100 Rp adalah bukti deret tidak stasioner.

Stasioneritas penting karena banyak model deret waktu klasik bekerja paling baik pada deret yang stasioner; perbedaan level antar periode justru sumber informasi yang ingin dimodelkan. Ada cara sederhana untuk mendekatkan deret ke stasioner, misalnya bekerja pada selisih antar bulan alih-alih levelnya, tetapi alur section ini tidak membutuhkan transformasi demikian. Yang kita butuhkan saat ini cukup satu kesadaran: mean tunggal tidak memadai untuk deret yang sedang bertren, sehingga kita memilih alat-alat yang menghormati urutan waktu.

Statistik Dasar Deret Beras dengan Python #

Ringkasan statistik klasik tetap menjadi langkah pembuka yang wajar untuk deret waktu — dengan tafsir yang disesuaikan untuk data yang bersambung. Cuplikan berikut menghitung mean, titik ekstrem, dan kenaikan setahun penuh deret beras:

python
beras = [12500, 12800, 12700, 13100, 13400, 13300,
         13600, 13900, 13800, 14200, 14500, 14400]

n = len(beras)
rata_semua = sum(beras) / n
rata_awal = sum(beras[:6]) / 6
rata_akhir = sum(beras[6:]) / 6
kenaikan = (beras[-1] - beras[0]) / beras[0] * 100

print(f"banyaknya bulan      : {n}")
print(f"mean seluruh periode : {rata_semua:.2f} Rp/kg")
print(f"mean Jan-Jun         : {rata_awal:.2f} Rp/kg")
print(f"mean Jul-Des         : {rata_akhir:.2f} Rp/kg")
print(f"harga terendah       : {min(beras)} Rp/kg")
print(f"harga tertinggi      : {max(beras)} Rp/kg")
print(f"kenaikan Jan ke Des  : {kenaikan:.1f} persen")

Output yang Dihasilkan:

text
banyaknya bulan      : 12
mean seluruh periode : 13516.67 Rp/kg
mean Jan-Jun         : 12966.67 Rp/kg
mean Jul-Des         : 14066.67 Rp/kg
harga terendah       : 12500 Rp/kg
harga tertinggi      : 14500 Rp/kg
kenaikan Jan ke Des  : 15.2 persen

Mari kita bedah kode di atas:

  1. Baris 7-9 (rata_awal dan rata_akhir): irisan beras[:6] dan beras[6:] membelah deret menjadi dua paruh; selisih mean-nya 1100 Rp menegaskan mean yang berpindah — tanda deret tidak stasioner yang kita bahas di atas.
  2. Baris 10 (kenaikan): perubahan harga dibagi harga awal lalu dikalikan 100, menghasilkan (14400 − 12500) / 12500 × 100 = 15.2 persen pertumbuhan selama satu tahun.
  3. Baris 17-18 (min dan max): rentang harga 12500 sampai 14500 memberi gambaran sebaran level sepanjang tahun.

Pada praktik modern, deret waktu disimpan sebagai tabel berindeks tanggal: pustaka pandas menyediakan DatetimeIndex untuk penanda waktu serta operasi resampling dan rolling yang akan kita pakai pada Section Statistika dengan Python — dokumentasinya tersedia di pandas.pydata.org . Untuk sekarang, daftar sederhana sudah memadai karena seluruh matematika section ini hanya membutuhkan aritmetika murni pada angka-angka yang tetap.

Kita kini memegang dua dataset dan satu kerangka: deret waktu adalah data yang bersambung, levelnya bisa berpindah, dan pergerakannya lahir dari beberapa komponen sekaligus. Dua komponen yang paling sering dijumpai — tren dan musiman — adalah bahan chapter berikutnya, tempat kita mengubah kesan “harga naik terus” dan “es krim laku saat panas” menjadi angka yang bisa dihitung dan dibandingkan.