Pada Praktikum Analisis Deret Waktu (ADW) kali ini kita akan membahas mengenai Rataan Bergerak Sederhana atau Single Moving Average. Data contoh yang digunakan adalah data The sales of mature pharmaceutical product yang diambil dari Buku Montgomery 1 (Appendix B, Table B.2, halaman 587). Data tersebut akan dianalisis menggunakan SMA dengan n=4. Berikut adalah tahapan analisisnya:
Pada tahap persiapan ini yang perlu dilakukan adalah :
install.packages("forecast")
## Installing package into '/home/rstudio-user/R/x86_64-pc-linux-gnu-library/4.0'
## (as 'lib' is unspecified)
install.packages("TTR")
## Installing package into '/home/rstudio-user/R/x86_64-pc-linux-gnu-library/4.0'
## (as 'lib' is unspecified)
library("forecast")
## Registered S3 method overwritten by 'quantmod':
## method from
## as.zoo.data.frame zoo
library("TTR")
library("graphics")
data1<-read.csv("https://raw.githubusercontent.com/akbarrizki/ADW/master/datap2.csv",header=TRUE)
Dalam sub bab ini, kita akan mulai melakukan beberapa hal :
data.ts<-ts(data1)
data.ts
## Time Series:
## Start = 1
## End = 120
## Frequency = 1
## Sales..in.thousands.
## [1,] 10618.1
## [2,] 10537.9
## [3,] 10209.3
## [4,] 10553.0
## [5,] 9934.9
## [6,] 10534.5
## [7,] 10196.5
## [8,] 10511.8
## [9,] 10089.6
## [10,] 10371.2
## [11,] 10239.4
## [12,] 10472.4
## [13,] 10827.2
## [14,] 10640.8
## [15,] 10517.8
## [16,] 10154.2
## [17,] 9969.2
## [18,] 10260.4
## [19,] 10737.0
## [20,] 10430.0
## [21,] 10689.0
## [22,] 10430.4
## [23,] 10002.4
## [24,] 10135.7
## [25,] 10096.2
## [26,] 10288.7
## [27,] 10289.1
## [28,] 10589.9
## [29,] 10551.9
## [30,] 10208.3
## [31,] 10334.5
## [32,] 10480.1
## [33,] 10387.6
## [34,] 10202.6
## [35,] 10219.3
## [36,] 10382.7
## [37,] 10820.5
## [38,] 10358.7
## [39,] 10494.6
## [40,] 10497.6
## [41,] 10431.5
## [42,] 10447.8
## [43,] 10684.4
## [44,] 10176.5
## [45,] 10616.0
## [46,] 10627.7
## [47,] 10684.0
## [48,] 10246.7
## [49,] 10265.0
## [50,] 10090.4
## [51,] 9881.1
## [52,] 10449.7
## [53,] 10276.3
## [54,] 10175.2
## [55,] 10212.5
## [56,] 10395.5
## [57,] 10545.9
## [58,] 10635.7
## [59,] 10265.2
## [60,] 10551.6
## [61,] 10538.2
## [62,] 10286.2
## [63,] 10171.3
## [64,] 10393.1
## [65,] 10162.3
## [66,] 10164.5
## [67,] 10327.0
## [68,] 10365.1
## [69,] 10755.9
## [70,] 10463.6
## [71,] 10080.5
## [72,] 10479.6
## [73,] 9980.9
## [74,] 10039.2
## [75,] 10246.1
## [76,] 10368.0
## [77,] 10446.3
## [78,] 10535.3
## [79,] 10786.9
## [80,] 9975.8
## [81,] 10160.9
## [82,] 10422.1
## [83,] 10757.2
## [84,] 10463.8
## [85,] 10307.0
## [86,] 10134.7
## [87,] 10207.7
## [88,] 10488.0
## [89,] 10262.3
## [90,] 10785.9
## [91,] 10375.4
## [92,] 10123.4
## [93,] 10462.7
## [94,] 10205.5
## [95,] 10522.7
## [96,] 10253.2
## [97,] 10428.7
## [98,] 10615.8
## [99,] 10417.3
## [100,] 10445.4
## [101,] 10690.6
## [102,] 10271.8
## [103,] 10524.8
## [104,] 9815.0
## [105,] 10398.5
## [106,] 10553.1
## [107,] 10655.8
## [108,] 10199.1
## [109,] 10416.6
## [110,] 10391.3
## [111,] 10210.1
## [112,] 10352.5
## [113,] 10423.8
## [114,] 10519.3
## [115,] 10596.7
## [116,] 10650.0
## [117,] 10741.6
## [118,] 10246.0
## [119,] 10354.4
## [120,] 10155.4
ts.plot(data.ts, xlab="Time Period ", ylab="Sales", main= "Time Series Plot Data Sales")
points(data.ts)
data.sma<-SMA(data.ts, n=4)
data.sma
## Time Series:
## Start = 1
## End = 120
## Frequency = 1
## [1] NA NA NA 10479.58 10308.78 10307.93 10304.73 10294.43
## [9] 10333.10 10292.28 10303.00 10293.15 10477.55 10544.95 10614.55 10535.00
## [17] 10320.50 10225.40 10280.20 10349.15 10529.10 10571.60 10387.95 10314.38
## [25] 10166.18 10130.75 10202.43 10315.98 10429.90 10409.80 10421.15 10393.70
## [33] 10352.63 10351.20 10322.40 10298.05 10406.28 10445.30 10514.13 10542.85
## [41] 10445.60 10467.88 10515.33 10435.05 10481.18 10526.15 10526.05 10543.60
## [49] 10455.85 10321.53 10120.80 10171.55 10174.38 10195.58 10278.43 10264.88
## [57] 10332.28 10447.40 10460.58 10499.60 10497.68 10410.30 10386.83 10347.20
## [65] 10253.23 10222.80 10261.73 10254.73 10403.13 10477.90 10416.28 10444.90
## [73] 10251.15 10145.05 10186.45 10158.55 10274.90 10398.93 10534.13 10436.08
## [81] 10364.73 10336.43 10329.00 10451.00 10487.53 10415.68 10278.30 10284.35
## [89] 10273.18 10435.98 10477.90 10386.75 10436.85 10291.75 10328.58 10361.03
## [97] 10352.53 10455.10 10428.75 10476.80 10542.28 10456.28 10483.15 10325.55
## [105] 10252.53 10322.85 10355.60 10451.63 10456.15 10415.70 10304.28 10342.63
## [113] 10344.43 10376.43 10473.08 10547.45 10626.90 10558.58 10498.00 10374.35
data.ramal<-c(NA,data.sma)
data.ramal
## [1] NA NA NA NA 10479.58 10308.78 10307.93 10304.73
## [9] 10294.43 10333.10 10292.28 10303.00 10293.15 10477.55 10544.95 10614.55
## [17] 10535.00 10320.50 10225.40 10280.20 10349.15 10529.10 10571.60 10387.95
## [25] 10314.38 10166.18 10130.75 10202.43 10315.98 10429.90 10409.80 10421.15
## [33] 10393.70 10352.63 10351.20 10322.40 10298.05 10406.28 10445.30 10514.13
## [41] 10542.85 10445.60 10467.88 10515.33 10435.05 10481.18 10526.15 10526.05
## [49] 10543.60 10455.85 10321.53 10120.80 10171.55 10174.38 10195.58 10278.43
## [57] 10264.88 10332.28 10447.40 10460.58 10499.60 10497.68 10410.30 10386.83
## [65] 10347.20 10253.23 10222.80 10261.73 10254.73 10403.13 10477.90 10416.28
## [73] 10444.90 10251.15 10145.05 10186.45 10158.55 10274.90 10398.93 10534.13
## [81] 10436.08 10364.73 10336.43 10329.00 10451.00 10487.53 10415.68 10278.30
## [89] 10284.35 10273.18 10435.98 10477.90 10386.75 10436.85 10291.75 10328.58
## [97] 10361.03 10352.53 10455.10 10428.75 10476.80 10542.28 10456.28 10483.15
## [105] 10325.55 10252.53 10322.85 10355.60 10451.63 10456.15 10415.70 10304.28
## [113] 10342.63 10344.43 10376.43 10473.08 10547.45 10626.90 10558.58 10498.00
## [121] 10374.35
data<-cbind(aktual=c(data.ts,rep(NA,5)),pemulusan=c(data.sma,rep(NA,5)),ramalan=c(data.ramal,rep(data.ramal[length(data.ramal)],4)))
data
## aktual pemulusan ramalan
## [1,] 10618.1 NA NA
## [2,] 10537.9 NA NA
## [3,] 10209.3 NA NA
## [4,] 10553.0 10479.58 NA
## [5,] 9934.9 10308.78 10479.58
## [6,] 10534.5 10307.93 10308.78
## [7,] 10196.5 10304.73 10307.93
## [8,] 10511.8 10294.43 10304.73
## [9,] 10089.6 10333.10 10294.43
## [10,] 10371.2 10292.28 10333.10
## [11,] 10239.4 10303.00 10292.28
## [12,] 10472.4 10293.15 10303.00
## [13,] 10827.2 10477.55 10293.15
## [14,] 10640.8 10544.95 10477.55
## [15,] 10517.8 10614.55 10544.95
## [16,] 10154.2 10535.00 10614.55
## [17,] 9969.2 10320.50 10535.00
## [18,] 10260.4 10225.40 10320.50
## [19,] 10737.0 10280.20 10225.40
## [20,] 10430.0 10349.15 10280.20
## [21,] 10689.0 10529.10 10349.15
## [22,] 10430.4 10571.60 10529.10
## [23,] 10002.4 10387.95 10571.60
## [24,] 10135.7 10314.38 10387.95
## [25,] 10096.2 10166.18 10314.38
## [26,] 10288.7 10130.75 10166.18
## [27,] 10289.1 10202.43 10130.75
## [28,] 10589.9 10315.98 10202.43
## [29,] 10551.9 10429.90 10315.98
## [30,] 10208.3 10409.80 10429.90
## [31,] 10334.5 10421.15 10409.80
## [32,] 10480.1 10393.70 10421.15
## [33,] 10387.6 10352.63 10393.70
## [34,] 10202.6 10351.20 10352.63
## [35,] 10219.3 10322.40 10351.20
## [36,] 10382.7 10298.05 10322.40
## [37,] 10820.5 10406.28 10298.05
## [38,] 10358.7 10445.30 10406.28
## [39,] 10494.6 10514.13 10445.30
## [40,] 10497.6 10542.85 10514.13
## [41,] 10431.5 10445.60 10542.85
## [42,] 10447.8 10467.88 10445.60
## [43,] 10684.4 10515.33 10467.88
## [44,] 10176.5 10435.05 10515.33
## [45,] 10616.0 10481.18 10435.05
## [46,] 10627.7 10526.15 10481.18
## [47,] 10684.0 10526.05 10526.15
## [48,] 10246.7 10543.60 10526.05
## [49,] 10265.0 10455.85 10543.60
## [50,] 10090.4 10321.53 10455.85
## [51,] 9881.1 10120.80 10321.53
## [52,] 10449.7 10171.55 10120.80
## [53,] 10276.3 10174.38 10171.55
## [54,] 10175.2 10195.58 10174.38
## [55,] 10212.5 10278.43 10195.58
## [56,] 10395.5 10264.88 10278.43
## [57,] 10545.9 10332.28 10264.88
## [58,] 10635.7 10447.40 10332.28
## [59,] 10265.2 10460.58 10447.40
## [60,] 10551.6 10499.60 10460.58
## [61,] 10538.2 10497.68 10499.60
## [62,] 10286.2 10410.30 10497.68
## [63,] 10171.3 10386.83 10410.30
## [64,] 10393.1 10347.20 10386.83
## [65,] 10162.3 10253.23 10347.20
## [66,] 10164.5 10222.80 10253.23
## [67,] 10327.0 10261.73 10222.80
## [68,] 10365.1 10254.73 10261.73
## [69,] 10755.9 10403.13 10254.73
## [70,] 10463.6 10477.90 10403.13
## [71,] 10080.5 10416.28 10477.90
## [72,] 10479.6 10444.90 10416.28
## [73,] 9980.9 10251.15 10444.90
## [74,] 10039.2 10145.05 10251.15
## [75,] 10246.1 10186.45 10145.05
## [76,] 10368.0 10158.55 10186.45
## [77,] 10446.3 10274.90 10158.55
## [78,] 10535.3 10398.93 10274.90
## [79,] 10786.9 10534.13 10398.93
## [80,] 9975.8 10436.08 10534.13
## [81,] 10160.9 10364.73 10436.08
## [82,] 10422.1 10336.43 10364.73
## [83,] 10757.2 10329.00 10336.43
## [84,] 10463.8 10451.00 10329.00
## [85,] 10307.0 10487.53 10451.00
## [86,] 10134.7 10415.68 10487.53
## [87,] 10207.7 10278.30 10415.68
## [88,] 10488.0 10284.35 10278.30
## [89,] 10262.3 10273.18 10284.35
## [90,] 10785.9 10435.98 10273.18
## [91,] 10375.4 10477.90 10435.98
## [92,] 10123.4 10386.75 10477.90
## [93,] 10462.7 10436.85 10386.75
## [94,] 10205.5 10291.75 10436.85
## [95,] 10522.7 10328.58 10291.75
## [96,] 10253.2 10361.03 10328.58
## [97,] 10428.7 10352.53 10361.03
## [98,] 10615.8 10455.10 10352.53
## [99,] 10417.3 10428.75 10455.10
## [100,] 10445.4 10476.80 10428.75
## [101,] 10690.6 10542.28 10476.80
## [102,] 10271.8 10456.28 10542.28
## [103,] 10524.8 10483.15 10456.28
## [104,] 9815.0 10325.55 10483.15
## [105,] 10398.5 10252.53 10325.55
## [106,] 10553.1 10322.85 10252.53
## [107,] 10655.8 10355.60 10322.85
## [108,] 10199.1 10451.63 10355.60
## [109,] 10416.6 10456.15 10451.63
## [110,] 10391.3 10415.70 10456.15
## [111,] 10210.1 10304.28 10415.70
## [112,] 10352.5 10342.63 10304.28
## [113,] 10423.8 10344.43 10342.63
## [114,] 10519.3 10376.43 10344.43
## [115,] 10596.7 10473.08 10376.43
## [116,] 10650.0 10547.45 10473.08
## [117,] 10741.6 10626.90 10547.45
## [118,] 10246.0 10558.58 10626.90
## [119,] 10354.4 10498.00 10558.58
## [120,] 10155.4 10374.35 10498.00
## [121,] NA NA 10374.35
## [122,] NA NA 10374.35
## [123,] NA NA 10374.35
## [124,] NA NA 10374.35
## [125,] NA NA 10374.35
ts.plot(data.ts, xlab="Time Period ", ylab="Sales", main= "SMA N=4 Data Sales")
points(data.ts)
lines(data.sma,col="green",lwd=2)
lines(data.ramal,col="red",lwd=2)
legend("topleft",c("data aktual","data pemulusan","data peramalan"), lty=8, col=c("black","green","red"), cex=0.8)
Anda dapat menyimpan Plot dengan memasukkan Alamat Folder di Laptop Masing-masing sebagaimana contoh di bawah ini
setwd("D:/Dropbox/campus/")
dev.copy(png, "sma4.png")
dev.off()
Nilai keakuratan yang akan dihitung disini adalah SSE,MSE, dan MAPE.
error=data.ts-data.ramal[1:length(data.ts)]
SSE=sum(error[5:length(data.ts)]^2)
SSE
## [1] 7781583
MSE=mean(error[5:length(data.ts)]^2)
MSE
## [1] 67082.61
MAPE=mean(abs((error[5:length(data.ts)]/data.ts[5:length(data.ts)])*100))
MAPE
## [1] 2.008453
Montgomery, D.C., et.al. 2008. Forecasting Time Series Analysis 2nd. John Wiley↩︎