Tugas Individu MPDW 1

Library

Sebelum melakukan eksplorasi, uji autokorelasi, dan pemodelan diperlukan library-library sebagai berikut:

## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
## Registered S3 method overwritten by 'quantmod':
##   method            from
##   as.zoo.data.frame zoo
## Loading required package: zoo
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
## 
## Attaching package: 'lawstat'
## The following object is masked from 'package:tseries':
## 
##     runs.test

Data Indeks Pembangunan Manusia

Data yang digunakan merupakan data Indeks Pembangunan Manusia provinsi Sulawesi Utara periode 2010-2021

Membuka file data

#membuka file data
dtipm <- read_xlsx("C:/Users/Agsyan/Documents/kuliah IPB/Metode Peramalan Deret Waktu/Tugas Individu MPDW.xlsx", sheet = 2)
head(dtipm)
## # A tibble: 6 × 2
##     IPM Tahun
##   <dbl> <dbl>
## 1  67.8  2010
## 2  68.3  2011
## 3  69.0  2012
## 4  69.5  2013
## 5  70.0  2014
## 6  70.4  2015

Total terdiri dari 12 pengamatan selama 12 tahun. Indeks Pembangunan Manusia terkecil yaitu di tahun 2010 sebesar 67.8 dan terbesar di tahun 2021 sebesar 73.3.

Eksplorasi Data

x <- dtipm$Tahun
y <- dtipm$IPM

Dalam eksplorasi data akan digunakan nilai tahun sebagai peubah x dan nilai IPM sebagai peubah y ### Diagram pencar identifikasi model

plot(x,y,pch = 20, col = "blue", main = "Scatter Plot X vs Y",
     ylab = "Nilai Peubah Y", xlab = "Nilai Peubah X")

Berdasarkan Plot pencar antara peubah x dan peubah y diketahui bahwa Indeks Pembangunan Manussia Provinsi Sulawesi Utara memiliki kecenderungan meningkat setiap tahunnya

Korelasi x dan y

cor(x,y)
## [1] 0.9951901

Korelasi antara Tahun dan Indeks Pembangunan Manusia menunjukkan hasil mendekati 1 atau hampir sempurna

Model Regresi Deret Waktu

Membuat sebuah model linear sederhana dengan IPM sebagai peubah y dan tahun sebagai peubah x

Model regresi

modelr <- lm(IPM~Tahun, data = dtipm)
summary(modelr)
## 
## Call:
## lm(formula = IPM ~ Tahun, data = dtipm)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.32231 -0.11255  0.00243  0.10242  0.40762 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -977.22703   32.62223  -29.96 4.02e-11 ***
## Tahun          0.51997    0.01619   32.12 2.01e-11 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.1936 on 10 degrees of freedom
## Multiple R-squared:  0.9904, Adjusted R-squared:  0.9894 
## F-statistic:  1032 on 1 and 10 DF,  p-value: 2.011e-11

Pada taraf nyata 5% intersept dan peubah x (Tahun) berpengaruh nyata terhadap peubah y (IPM). Selanjutnya perlu diketahui apakah model yang sudah dibuat memiliki autokorelasi atau tidak

Deteksi Autokorelasi

Setelah melakukan pemodelan regresi, perlu diketahui apakah model yang telah ada memiliki autokorelasi atau tidak. Deteksi autokorelasi ini dapat menggunakan 2 metode yaitu metode grafik serta metode uji ### Grafik

1. Residual Plot

#sisaan dan fitted value
resi1 <- residuals(modelr)
fit <- predict(modelr)

#Diagnostik dengan eksploratif
par(mfrow = c(2,2))

qqnorm(resi1)
qqline(resi1, col = "steelblue", lwd = 2)

plot(fit, resi1, col = "steelblue", pch = 20, xlab = "Sisaan", 
     ylab = "Fitted Values", main = "Sisaan vs Fitted Values")
abline(a = 0, b = 0, lwd = 2)

hist(resi1, col = "steelblue")

plot(seq(1,12,1), resi1, col = "steelblue", pch = 20, 
     xlab = "Sisaan", ylab = "Order", main = "Sisaan vs Order")
lines(seq(1,12,1), resi1, col = "red")
abline(a = 0, b = 0, lwd = 2)

Sebelum melihat adanya autokorelasi atau tidak, dapat diketahui melalui normal q-q plot maupun histogram bahwa model regresi awal menyebar secara normal. Kemudian, berdasarkan plot sisaan tidak terindikasi adanya autokorelasi pada model ### 2. ACF dan PACF Plot

#ACF dan PACF identifikasi autokorelasi
par(mfrow = c(2,1))
acf(resi1)
pacf(resi1)

ACF merupakan fungsi korelasi antara nilai deret pada interval tertentu, sedangkan PACF kurang lebih sama dengan ACF hanya saja memperhitungkan nilai-nilai diantara selang. ## Uji Statistik

Durbin Watson Test

H0: Tidak ada autokorelasi

H1: Terdapat autokorelasi

lmtest::dwtest(modelr, alternative = 'two.sided') #ada autokorelasi
## 
##  Durbin-Watson test
## 
## data:  modelr
## DW = 1.3909, p-value = 0.1285
## alternative hypothesis: true autocorrelation is not 0

p-value = 0.1285 > 5% sehingga tak tolak H0, tidak cukup bukti untuk menyatakan bahwa terdapat autokorelasi (positif) pada taraf nyata 5%

2. Breusch-Godfrey Test

H0: Tidak ada autokoelasi

H1: Terdapat autokorelasi

lmtest::bgtest(y ~ x, data=dtipm, order=1) #Perform Breusch-Godfrey test for first-order serial correlation
## 
##  Breusch-Godfrey test for serial correlation of order up to 1
## 
## data:  y ~ x
## LM test = 0.49009, df = 1, p-value = 0.4839

p-value = 0.4839 > 5%, tak tolak H0 sehingga tidak cukup bukti untuk menyatakan bahwa ada autokorelasi pada taraf nyata 5% (tidak terdapat autokorelasi)

3. Run’s Test

H0: Tidak terdapat autokorelasi H1: Terdapat autokorelasi

lawstat::runs.test(resid(modelr), alternative = 'two.sided')
## 
##  Runs Test - Two sided
## 
## data:  resid(modelr)
## Standardized Runs Statistic = -1.2111, p-value = 0.2259

p-value = 0.22 > 0.05, tak tolak H0 sehingga tak cukup bukti untuk menyatakan bahwa terdapat autokorelasi pada taraf nyata 5%.

Kesimpulan

Model awal dengan peubah x yaitu tahun dan peubah y yaitu IPM provinsi Sulawesi Utara menyebar secara normal serta tidak terindikasi adanya autokorelasi baik dengan metode grafik ataupun metode uji. Uji Drubin-Watson,Breusch-Godfrey, dan Runs test ketiganya menghasilkan hasil tak tolak H0 yang berarti belu cukup bukti terdapat auto korelasi pada model. Dengan demikian, model awal merupakan model terbaik dan tidak perlu dilakukan penanganan autokorelasi.

modelr
## 
## Call:
## lm(formula = IPM ~ Tahun, data = dtipm)
## 
## Coefficients:
## (Intercept)        Tahun  
##     -977.23         0.52

y = -977.23 + 0.52x

Ketika peubah x meningkat sebesar satu satuan, maka peubah y akan meingkat sebesar 0.52 satuan dengan intersept sebesar -977.23.