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$IPMDalam 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.