Anda di halaman 1dari 23

Kelas A

LAPORAN PRAKTIKUM
ANALISIS RUNTUN WAKTU
Modul 5 : SARIMA

Nomor Tanggal Tanda Tangan


Nama Praktikan
Mahasiswa Kumpul Praktikan

Erzylia Herlin Briliant 16611077 15/11/2018

Tanggal Tanda tangan


Nama Penilai Nilai
Koreksi Asisten Dosen

Dita Apriani
Fitri Khairani
Masthura

Mujiati Dwi
Kartikasari, S.Si.,
M.Sc.

JURUSAN STATISTIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS ISLAM INDONESIA
YOGYAKARTA
2018
Daftar Isi

Daftar Isi.................................................................................................................. ii
Daftar Tabel ........................................................................................................... iii
Daftar Gambar ........................................................................................................ iii
1 Pendahuluan .................................................................................................... 1
1.1 SARIMA (Seasonal ARIMA) ................................................................. 1
2 Deskripsi Kerja................................................................................................ 3
2.1 Studi Kasus ............................................................................................. 3
2.2 Langkah Kerja Penyelesaian Kasus ........................................................ 4
3 Deskripsi Kerja................................................................................................ 9
3.1 Identifikasi Pola Data .............................................................................. 9
3.1.1 Differencing Data Musiman ................................................................ 9
3.1.2 Differencing Data Non Musiman ...................................................... 11
3.2 Fitted Model .......................................................................................... 13
3.3 Uji Kecocokan Model ........................................................................... 15
3.4 Uji Normalitas ....................................................................................... 16
3.5 Peramalan .............................................................................................. 17
3.6 Plot Peramalan dan Data asli................................................................. 17
4 Penutup.......................................................................................................... 18
5 Daftar Pustaka ............................................................................................... 19

ii
Daftar Tabel

Tabel 2.1 Data penumpang pesawat ....................................................................... 3


Tabel 3.1 Hasil Nilai AIC dari Setiap Estimasi Model ........................................ 14

Daftar Gambar

Gambar 3.1 Grafik Pola Data Penumpang Pesawat .............................................. 9


Gambar 3.2 Grafik Pola Data yang Telah Didifferencing Musimannya ............. 10
Gambar 3.3 Output Uji Kestasioneran untuk Data Differencing Musiman ........ 10
Gambar 3.4 Grafik Pola yang Telah Didifferencing Data Non Musimannya ..... 11
Gambar 3.5 Output Uji Kestasioneran dengan ADF Test ................................... 11
Gambar 3.6 Output Uji Kestasioneran dengan KPSS Test ................................. 12
Gambar 3.7 Plot ACF dan PACF Model ............................................................. 13
Gambar 3.8 Output Summary Tiap Model .......................................................... 14
Gambar 3.9 Output Uji Kesignifikanan Koefisien Terhadap Model .................. 15
Gambar 3.10. Uji Diagnostik............................................................................... 16
Gambar 3.11. Uji Normalitas .............................................................................. 16
Gambar 3.12. Hasil Peramalan ............................................................................ 17
Gambar 3.13. Plot Peramalan dan Data Asli ....................................................... 17

iii
1 Pendahuluan

1.1 SARIMA (Seasonal ARIMA)

Seasonal ARIMA merupakan model ARIMA yang mengandung faktor


musiman. Musiman mengartikan bahwa data memiliki kecenderungan mengulangi
pola tingkah gerak dalam periode musim. Baisanya dapat berupa mingguan,
bulanan, triwulan, dan semesteran. Misalnya musiman satu tahun untuk data
bulanan. Oleh sebab itu, runtun waktu musiman mempunyai karakteristik yang
ditunjukan oleh adanya korelasi beruntun yang kuat pada jarak semusim (periode
musim), yaitu waku yang berkaitan dengan banyak observasi pada per periode
musim. Persamaan untuk model peramalan Sarima sebagai berikut:

ARIMA (p,d,q) (P,D,Q)s (1)

Keterangan dari rumus diatas

p dan q : Komponen non musiman dari model ARMA

d : Orde diferensi komponen non musiman

P : Nilai dari Seasional AR(SAR)

D : Nilai dari differencing seasonal

Q : Nilai dari moving average seasonal (SMA)

s : Jumlah periode per musim

Persamaan merupakan model runtun waktu ARMA (p,q) yang memperoleh


differencing sebanyak d. Proses ARMA (p,q) adalah suatu model campuran antara
autoregressive orde p dan moving average orde q, jadi ARIMA (p,d,q) adalah
bagian yang tidak musiman dari model, sedangkan (P,D,Q) adalah bagian musiman
dari model, dan kuadrat S adalah jumlah periode per musim.

Model dalam metode SARIMA melibatkan beberapa langkah berikut:

1
1. Mengidentifikasi struktur SARIMA (p, d, q) (P, D, Q)s;

2. Mengestimasi parameter yang tidak diketahui;

3. Melakukan uji Goodness of Fit terhadap estimasi residual;

4. Melakukan peramalan dari data yang diketahui.

Untuk proses SARIMA yang umum, fungsi peramalan jangka panjang


bergantung pada pola musiman individual paling akhir dalam data percobaan, dan
peramalan terdiri atas pertambahan periodik pola dan komponen modifikasi aditif
(pertambahan) yang cenderung sama dengan nol secara eksponensial secara cepat
karena horizon bertambah besar.

2
2 Deskripsi Kerja

2.1 Studi Kasus


Dibawah merupakan data jumlah penumpang pesawat di salah satu Bandara
Utama yaitu Bandara Polonia. Data jumlah penumpang pesawat meliputi data pada
awal januari 2016 sampai dengan september 2018 bersumber dari bps.go.id. Dari
data tersebut lakukanlah peramalan 12 bulan kedepan.

Tabel 2.1 Data penumpang pesawat

Tahun Bulan Jumlah Penumpang

Januari 317318

Februari 317318

Maret 300626

April 297024

Mei 322226

Juni 280360
2016
Juli 380567

Agustus 312035

September 278897

Oktober 287853

November 264322

Desember 289707

Januari 334556

Februari 259457
2017
Maret 287522

April 294602

3
Mei 294629

Juni 280475

Juli 384004

Agustus 309004

september 305698

Oktober 307834

November 301136

Desember 318806

Januari 372984

Februari 290832

Maret 312516

April 324330

2018 Mei 275394

Juni 336870

Juli 361523

Agustus 317360

September 292582

2.2 Langkah Kerja Penyelesaian Kasus

Dalam menyelesaikan studi kasus di atas, berikut langkah-langkah yang


dilakukan praktikan :

1. Buka aplikasi Rstudio.


2. Pertama adalah menginputkan data dan praktikan akan membuat data
berbentuk time series dengan data dimulai pada tahun 2016 dan memiliki
12 frekuensi.
####### SARIMA #######
penumpang=scan()
penumpang=ts(penumpang,start=c(2016,1),frequency=12)
4
penumpang
3. Membuat plot data penumpang pesawat untuk melihat pola data dari data
tersebut.
ts.plot(penumpang, col='blue', main="TS: Penumpang
Pesawat", lwd=2)
4. Setelah itu, sebelum melakukan analisis terlebih dahulu praktikan
menginstall packages “tseries” dan “forecast”, kemudian setelah terinstall
praktikan harus memanggil packages tersebut untuk mengaktifkannya
dengan perintah “library”.
library(tseries)
library(forecast)
5. Kemudian lihat kestasioneran data dengan menggunakan tes ADF dan
KPSS, sebagai berikut.
### Uji stasioneritas data ###
adf.test(penumpang)
kpss.test(penumpang, null="Level")
6. Selain dengan menggunakan ADF dan KPSS test, uji kestasioneran dapat
dilihat dengan melihat plot ACF dan PACF nya menggunakan perintah
sebagai berikut.
### Melihat adanya musiman (selain dari plot) ###
par (mfrow=c(1,2))
Acf(penumpang, lag.max = 36) #hasil plot acf bergelombang
sehingga data yang ada terdapat pola musiman
Pacf(penumpang, lag.max = 36) #kalau mengandung musiman
maka, ACF dan PACFnya bergelombang
7. Karena data yang ada mengandung musiman maka terlebih dahulu
dilakukan differencing untuk musimannya. Kemudian melihat plotnya
## Jika data mengandung musiman maka, dilakukan differencing
pertama agar musimannya hilangan ###
penumpang.dslog = diff(log(penumpang), differences=1,
lag=12)
ts.plot(penumpang.dslog, col="red", main="TS: Penumpang
dslog")
8. Setelah itu lakukan uji kestasioneran data lagi dengan menggunakan uji
ADF tes, dengan syntax sebagai berikut.
### Uji stationeritas untuk data yang differencing musiman
###
adf.test(penumpang.dslog)
kpss.test(penumpang.dslog)
9. Untuk melihat efek musiman yang telah didifferencingkan dengan
melihat plot acf dan pacf maka menggunakan perintah sebagai berikut.
### Melihat efek musiman setelah di-differencing ###
5
par(mfrow=c(1,2))
Acf(penumpang.dslog, lag.max=37)
Pacf(penumpang.dslog, lag.max=37)
10. Karena hasil adf tes menunjukkan data belum stasioner maka lakukan
differencing untuk data yang non-musimannya dengan perintah sebagai
berikut.
### Data belum stasioner maka, dilakukan differensing lagi
yang non-musiman yang telah didifferensing ###
penumpang.ddslog = diff(penumpang.dslog, differences=1)
11. Uji kestasioneritas data dapat dilihat dengan menggunakan perintah
sebagai berikut.
### Uji stationeritas data differencing musiman dan non-
musiman ###
adf.test(penumpang.ddslog)
kpss.test(penumpang.ddslog)
12. Untuk melakukan estimasi model terbaik dapat dilihat dengan
menggunakan plot acf dan pacf.
### Melakukan estimasi model dengan melihat plot ACF dan
PACF ###
par (mforw = c(1,2))
Acf(penumpang.ddslog, lag.max=37) #dilihat dari 4 lag
pertama
Pacf(penumpang.ddslog, lag.max=37)
13. Data belum stasioner, maka dilakukan differensing lagi yang non-
musiman yang telah didifferensing
penumpang.dddslog = diff(penumpang.ddslog, differences=2)
14. Kemudian melakukan uji stasioneritas lagi
### Uji stationeritas data differencing musiman dan non-
musiman ###
adf.test(penumpang.dddslog)
kpss.test(penumpang.dddslog)
15. Melakukan estimasi model dengan melihat plot acf dan pacf
par (mforw = c(1,2))
Acf(penumpang.dddslog, lag.max=37) #dilihat dari 4 lag
pertama
Pacf(penumpang.dddslog, lag.max=37)
16. Setelah uji kestasioneritas terpenuhi maka langkah selanjutnya adalah
mencari model terbaik berdasarkan plot acf dan pacf yang telah
didapatkan.
### Fitting Model ###
model1 = Arima(log(penumpang), order = c(1,2,1), seasonal =
list(order = c(0,1,0), period = 12), include.mean = FALSE)
summary(model1)

6
model2 = Arima(log(penumpang), order = c(1,2,0), seasonal =
list(order = c(0,1,0), period = 12), include.mean = FALSE)
summary(model2)
model3 = Arima(log(penumpang), order = c(0,2,1), seasonal =
list(order = c(0,1,0), period = 12), include.mean = FALSE)
summary(model3)
17. Kemudian praktikan melakukan uji signifikansi terdapat model yang
dibuat dengan perintah sebagai berikut.
printstatarima <- function (x, digits = 4,se=T,...){
if (length(x$coef) > 0) {
cat("\nCoefficients:\n")
coef <- round(x$coef, digits = digits)
if (se && nrow(x$var.coef)) {
ses <- rep(0, length(coef))
ses[x$mask] <- round(sqrt(diag(x$var.coef)), digits =
digits)
coef <- matrix(coef, 1, dimnames = list(NULL,
names(coef)))
coef <- rbind(coef, s.e. = ses)
statt <- coef[1,]/ses
pval <- 2*pt(abs(statt), df=length(x$residuals)-1,
lower.tail = FALSE)
coef <- rbind(coef,
t=round(statt,digits=digits),sign.=round(pval,digits=digit
s))
coef <- t(coef) }
print.default(coef, print.gap = 2) }}
printstatarima(model1)
printstatarima(model2)
printstatarima(model3)
18. Setelah didapatkan model terbaik praktikan melakukan uji diagnostik
pada model.
### Uji diagnostik ###
tsdiag(model1)
tsdiag(model2)
tsdiag(model3)
19. Kemudian melakukan uji normalitas
##Uji Normalitas
jarque.bera.test(model1$residuals)
jarque.bera.test(model2$residuals)
jarque.bera.test(model3$residuals)
20. Kemudian praktikan melakukan peramalan data untuk 12 periode
kedepan dengan menggunakan model terbaik.
### Peramalan ###
penumpang.pred=predict(model1, n.ahead = 12)
penumpang.pred
21. Kemudian membalikan data ke awal lagi
### Membalikkan ke data awal ###
penumpang.pred2 = exp(penumpang.pred$pred)

7
penumpang.pred2
22. Melihat nilai prediksi berdasarkan model terbaik
### Nilai prediksi ###
penumpang.fitted2 = exp(fitted(model1))
penumpang.fitted2
23. Melihat frafik data asli dan data prediksi
### Grafik data asli dan data prediksi ##
ts.plot(penumpang, col="blue")
lines(penumpang.fitted2, col="red")

8
3 Deskripsi Kerja

Pada bab ini akan dijelaskan hasil-hasil berdasarkan langkah-langkah pada


bab deskripsi kerja sebelumnya.

3.1 Identifikasi Pola Data

Berdasarkan pola data yang dihasilkan dari data histori adalah sebagai
berikut.

Gambar 3.1 Grafik Pola Data Penumpang Pesawat


Berdasarkan gambar 3.1 terlihat bahwa data jumlah penumpang pesawat
mengandung pola musiman. Pola data tersebut dapat digunakan untuk melihat
apakah data sudah stasioner dalam variansi. Setelah data stasioner dan diketahui
mengandung pola trend dan musiman maka metode yang cocok untuk digunkan
dalam peramalan adalah metode SARIMA.

3.1.1 Differencing Data Musiman

Pola data yang ada menunjukkan data tidak stasioner, maka pertama
praktikan akan melakukan differencing data pada musiman yang ada pada data yang
digunakan.

9
Gambar 3.2 Grafik Pola Data yang Telah Didifferencing Musimannya

Gambar di atas adalah pola data setelah data musiman didiffencingkan, untuk
menguji kestasioneran datanya dapat menggunakan uji adf test.

Gambar 3.3 Output Uji Kestasioneran untuk Data Differencing Musiman

Untuk uji stasioneritas data dapat dilakukan dengan melihat output dari hasil
adf test. Adapun hipotesis yang digunakan adalah :

o Hipotesis
H0 : Data mengandung unit root (tidak stasioner)
H1 : Data tidak mengandung unit root (stasioner)
o Tingkat signifikansi
α = 5%
o Daerah kritis
Tolak H0 apabila p-value < α
o Statistik uji
P-value = 0.99
o Keputusan
Karena p-value = 0.99 > α = 0.05 → maka Gagal Tolak H0
10
o Kesimpulan
Dengan menggunakan tingkat kepercayaan 95% diperoleh keputusan tolak
H0 yang berarti bahwa data tidak stasioner.

Karena data yang ada belum stasioner maka kedua praktikan akan
melakukan differencing data non musimannya. Data yang differencingkan adalah
data yang telah didifferencingkan data musiman sebelumnya.

3.1.2 Differencing Data Non Musiman

Gambar 3.4 Grafik Pola yang Telah Didifferencing Data Non Musimannya
Berdasarkan hasil grafik di atas data pola data telah stasioner atau data yang
ada telah menyebar disekitaran rata-rata. Untuk uji kestasioneran data selain
melihat pola data dapat juga diketahui melalui hasil output adf dan kpss testnya.

Gambar 3.5 Output Uji Kestasioneran dengan ADF Test


Untuk uji stasioneritas data dapat dilakukan dengan melihat output dari hasil
adf test. Adapun hipotesis yang digunakan adalah :

o Hipotesis
11
H0 : Data mengandung unit root (tidak stasioner)
H1 : Data tidak mengandung unit root (stasioner)
o Tingkat signifikansi
α = 5%
o Daerah kritis
Tolak H0 apabila p-value < α
o Statistik uji
P-value = 0.08406
o Keputusan
Karena p-value = 0.08406 > α = 0.05 → maka Tolak H0
o Kesimpulan
Dengan menggunakan tingkat kepercayaan 95% diperoleh keputusan tolak
H0 yang berarti bahwa data stasioner.

Gambar 3.6 Output Uji Kestasioneran dengan KPSS Test


Untuk uji stasioneritas data dapat pula dilakukan dengan melihat output dari
hasil kpss test. Adapun hipotesis yang digunakan adalah :

o Hipotesis
H0 : Data stasioner (data mengandung unit root stasioner)
H1 : Data tidak stasioner (data tidak mengandung unit root)
o Tingkat signifikansi
α = 5%
o Daerah kritis
Tolak H0 apabila p-value < α
o Statistik uji
P-value = 0.1
o Keputusan

12
Karena p-value = 0.1 > α = 0.05 → Gagal Tolak H0
o Kesimpulan
Dengan menggunakan tingkat kepercayaan 95% diperoleh keputusan gagal
tolak H0 yang berarti bahwa data stasioner.

Berdasarkan hasil kesimpulan uji kestasioneran data dengan menggunakan uji adf
tes dan kpss tes didapatkan hasil yaitu data yang ada telah stasioner.

3.2 Fitted Model

Dikarenakan data telah stasioner maka praktikan akan melakukan pencarian model
terbaik dengan menggunakan plot ACF dan PACF.

Gambar 3.7 Plot ACF dan PACF Model


Pada model SARIMA notasi yang digunakan unttuk membuat model dapat
dinyatakan dalam (p,d,q) sebagai notasi non musiman dan (P,D,Q) sebagai notasi
musimannya. Berdasarkan plot ACF dan PACF di atas diperolehh model SARIMA
(1,2,1) (0,1,0) , SARIMA(1,2,0) (0,1,0) dan SARIMA(0,2,1) (1,0,1). Model
tersebut harus diuji terlebih dahulu signifikansi dan nilai AIC terkecil maka baru
bisa dikatakan model terbaik dengan memenuhi uji signifikansi dan nilai AIC
terkecil.

Praktikan ingin melihat nilai AIC dari setiap estimasi model yang dibuat,
dimana nilai AIC ini bisa menentukan mana model terbaik yang bisa digunakan
untuk data di atas. Adapun hasil nilai AIC dapat dilihat dari output summary tiap
model yang akan dirangkum pada tabel berikut.
13
Gambar 3.8 Output Summary Tiap Model

Tabel 3.1 Hasil Nilai AIC dari Setiap Estimasi Model

Model AIC
SARIMA(1,2,1) (0,1,0) -24,61
SARIMA(1,2,0) (0,1,0) -13,22
SARIMA (0,2,1) (0,1,0) -13,47

Pada model-model yang telah ditentukan di atas, berdasarkan hasil nilai


AIC didapatkan bahwa model dengan nilai AIC terkecil adalah model
SARIMA(1,2,1) (0,1,0) dengan AIC sebesar -24,61. Untuk mengetahui apakah
model ini model terbaik maka dilakukan uji kecocokan model untuk mengetahui
apakah model yang lain tersebut signifikan atau tidak dan memperoleh model
terbaik. Adapun hasil uji kecocokan model pada model SARIMA(1,2,0) (0,1,0)
adalah sebagai berikut.

14
Gambar 3.9 Output Uji Kesignifikanan Koefisien Terhadap Model

3.3 Uji Kecocokan Model

Berdasarkan hasil uji kecocokan model adapun hipotesis diperoleh adalah :

o Hipotesis
H0 : Koefisien-koefisien tidak signifikan terhadap model SARIMA
H1 : Koefisien-koefisien signifikan terhadap model SARIMA
o Tingkat signifikansi
α = 5%
o Daerah kritis
Tolak H0 apabila p-value < α
o Statistik uji

p-
Model Koefisien α Keputusan
value
SARIMA AR(1) 0e+00
(1,2,1) 0,05 Tolak H0
(0,1,0) MA(1) 1e-04

o Kesimpulan
Dengan menggunakan tingkat kepercayaan 95% dapat disimpulkan bahwa
model SARIMA(1,2,1) (0,1,0) signifikan.

Dari model tersebut dilakukan uji diagnostik. Adapun hasil output untuk uji
diagnostiknya adalah.

15
Gambar 3.10. Uji Diagnostik
Terlihat dari hasil cek diagnotik di atas, residual dari model SARIMA(1,2,1) (0,1,0)
merupajan model yang baik untuk data di atas. Dari plot ACF terlihat bahwa
adannya 1 lag yang keluar dari gari batas interval. Sedangkan untuk nilai p-value
dari statistik Ljung-Box juga di atas garis batas 1%.

3.4 Uji Normalitas

o Hipotesis
H0 : data berdistribusi normal
H1 : data tidak berdistribusi normal
o Taraf Signifiansi
α = 0.05
o Daerah kritis
Tolak H0 jika p-value < α
o Statistic uji

Gambar 3.11. Uji Normalitas


o Keputusan
p-value (0.02452) > α(0.05), maka Gagal Tolak H0
16
o Kesimpulan
Dengan tingkat kepercayaan 95% didapat hasil bahwa data berdistribusi
normal

3.5 Peramalan

Setelah uji diagnistik, maka dilakukan peramalan dengan menggunakan model


terbaik yaitu model SARIMA (1,2,1) (0,1,0) dengan output sebagai berikut.

Gambar 3.12. Hasil Peramalan


Berdasarkan output di atas didapatkan peramalan 12 periode kedepan
dimulai dari Oktober 2018 sampai September 2019. Yaitu 299660.8 ; 297918.8 ;
324658.1 ; 390484.3 ; 293798.1 ; 328836.5 ; 334349.7 ; 325789.5 ; 297794.5 ;
381505.7 ; 354631.1 ; 290724.6

3.6 Plot Peramalan dan Data asli

Gambar 3.13. Plot Peramalan dan Data Asli


Dapat dilihat pada gambar diatas merupakan plot data prediksi dan data asli.
Data asli dilambangkan dengan warna biru sedangkan data prediksi dilambangkan
dengan warna merah. Dapat dilihat bahwa garis prediksi hampir sangat mendekati
dengan data asli hal ini menunjukkan bahwa peramalan model sangat baik.

17
4 Penutup

1. Berdasarkan hasil nilai AIC didapatkan bahwa model dengan nilai AIC terkecil
adalah model SARIMA(1,2,1) (0,1,0) dengan AIC sebesar -24,61.
2. Pada uji kecocokan model dengan menggunakan tingkat kepercayaan 95%
dapat disimpulkan bahwa model SARIMA(1,2,1) (0,1,0) signifikan.
3. Dari hasil cek diagnotik di atas, residual dari model SARIMA(1,2,1) (0,1,0)
merupajan model yang baik untuk data di atas. Dari plot ACF terlihat bahwa
adannya 1 lag yang keluar dari gari batas interval. Sedangkan untuk nilai p-
value dari statistik Ljung-Box juga di atas garis batas 1%.
4. Pada uji normalitas dengan tingkat kepercayaan 95% didapat hasil bahwa data
berdistribusi normal
5. Didapatkan peramalan 12 periode kedepan dimulai dari Oktober 2018 sampai
September 2019. Yaitu 299660.8 ; 297918.8 ; 324658.1 ; 390484.3 ; 293798.1
; 328836.5 ; 334349.7 ; 325789.5 ; 297794.5 ; 381505.7 ; 354631.1 ; 290724.6
6. Dari plot data asli dan data prediksi dapat disimpulkan bahwa prediksi sangat
baik.

18
5 Daftar Pustaka

Irun. 2012. Peramalan Dengan Menggunakan Model Sarima 2. Tersedia pada


https://irun89.wordpress.com/2012/05/24/peramalan-dengan-menggunakan-
model-sarima-2/.

Primandari, Arum Handini., Amora, Ria., dkk. Modul Praktikum Analisis Runtun
Waktu. FMIPA UII: Yogyakarta

Rahardi, Dicky. 2007. Metode Peramalan Bisnis dan Upaya Memperoleh Akurasi
yang Lebih Baik. Tersedia pada
http://dickyrahardi.blogspot.co.id/2007/01/metode-peramalan-bisnis-dan-
upaya_17.html.

19
20

Anda mungkin juga menyukai