#ANALISIS TRAND EKONOMI REGIONAL dan Strateginya dengan Metode VAR
#Memanggil Data
Data=read.table(file.choose(),header = TRUE)
Data
## Y X1 X2 X3 X4
## 1 98339373 2.66 1595.77 7275.56 12929271
## 2 99852518 1.28 1478.33 10601.44 13216574
## 3 102558505 1.99 2100.94 10394.36 13712502
## 4 106684988 0.24 2041.69 9943.29 13849623
## 5 107155328 2.11 1894.66 8626.60 13939167
## 6 107026437 0.38 2097.27 8930.52 14290605
## 7 106156999 2.55 1730.30 7686.17 14859571
## 8 108538947 0.44 2421.31 8549.25 14914661
## 9 110002139 2.77 2480.46 7554.54 13939167
## 10 110193118 1.28 2564.76 7657.06 14290605
## 11 109000187 4.68 2353.73 7164.07 14859571
## 12 109337463 0.60 2009.08 7469.65 14914661
## 13 109872870 1.25 2187.21 6567.30 15637492
## 14 110423601 0.92 2248.56 6513.11 15641705
## 15 112332527 1.49 2057.41 6339.73 15943141
## 16 113400050 3.78 1928.25 5547.64 16020480
## 17 109159575 0.70 1355.04 4929.70 15807511
## 18 109716076 1.36 1359.27 4394.64 15870821
## 19 109303274 1.29 1496.71 4116.78 16363795
## 20 112497432 1.44 1295.24 4042.16 16122008
## 21 108618918 0.67 817.30 3338.04 16189519
## 22 108920583 0.85 936.67 3241.37 16279062
## 23 109251195 0.68 1012.14 3292.73 16305024
## 24 112213136 1.16 944.98 3982.25 16393932
## 25 112808583 1.15 626.49 4320.77 16489073
## 26 112830025 1.47 756.47 4083.58 16691339
## 27 113034275 -0.17 857.46 4334.68 16786727
## 28 114069026 0.67 987.90 4793.82 16882385
## 29 114832042 0.60 1079.79 4596.82 16923178
## 30 115033493 1.49 955.92 4462.01 17214524
## 31 115347322 0.81 1224.57 4502.21 17299074
## 32 119481570 0.32 1298.35 4824.69 17509419
## 33 120545081 0.37 648.39 4135.26 17606694
## 34 120682397 1.21 524.10 4086.94 17795658
## 35 122482428 0.22 611.21 3971.43 17840874
## 36 122813276 0.24 720.83 3983.53 17876034
## 37 122091036 0.57 736.76 3783.41 17896390
## 38 114145307 0.29 269.37 2963.29 17378319
## 39 116866297 -0.50 366.52 2698.82 17761551
## 40 119290689 0.44 587.65 3517.22 17780086
## 41 118303905 0.52 452.02 4072.25 17789886
## 42 120555095 0.75 963.32 4886.26 18154428
## 43 122311204 -0.05 681.57 7034.26 17783646
## 44 123269402 0.89 1232.76 8167.14 17960087
## 45 121145445 1.23 1047.99 6147.07 18040877
## 46 124923263 2.23 1201.96 9860.42 18558576
## 47 128847399 1.21 1455.70 10623.60 18677224
## 48 131242800 0.56 1712.34 9427.15 18857007
## 49 129613661 1.13 1249.53 7951.04 18957923
## 50 133530221 0.80 1379.65 6785.69 19510237
## 51 135681546 0.53 1329.99 5864.05 19521290
## 52 138804580 0.95 1611.65 6423.91 19840860
## 53 139022295 0.86 1017.26 5928.10 19956452
## 54 141337704 0.84 1110.66 6228.35 20517210
## 55 143165780 -0.44 1240.26 5705.17 20396752
## 56 147298228 0.23 1630.06 6804.05 20705738
## 57 144698413 0.77 1236.44 5199.20 21025987
## 58 147961938 1.09 1158.11 4831.48 21457212
#Time Series Plot
tsdata=ts(Data,start=c(2011,1),frequency=4)
tsdata
## Y X1 X2 X3 X4
## 2011 Q1 98339373 2.66 1595.77 7275.56 12929271
## 2011 Q2 99852518 1.28 1478.33 10601.44 13216574
## 2011 Q3 102558505 1.99 2100.94 10394.36 13712502
## 2011 Q4 106684988 0.24 2041.69 9943.29 13849623
## 2012 Q1 107155328 2.11 1894.66 8626.60 13939167
## 2012 Q2 107026437 0.38 2097.27 8930.52 14290605
## 2012 Q3 106156999 2.55 1730.30 7686.17 14859571
## 2012 Q4 108538947 0.44 2421.31 8549.25 14914661
## 2013 Q1 110002139 2.77 2480.46 7554.54 13939167
## 2013 Q2 110193118 1.28 2564.76 7657.06 14290605
## 2013 Q3 109000187 4.68 2353.73 7164.07 14859571
## 2013 Q4 109337463 0.60 2009.08 7469.65 14914661
## 2014 Q1 109872870 1.25 2187.21 6567.30 15637492
## 2014 Q2 110423601 0.92 2248.56 6513.11 15641705
## 2014 Q3 112332527 1.49 2057.41 6339.73 15943141
## 2014 Q4 113400050 3.78 1928.25 5547.64 16020480
## 2015 Q1 109159575 0.70 1355.04 4929.70 15807511
## 2015 Q2 109716076 1.36 1359.27 4394.64 15870821
## 2015 Q3 109303274 1.29 1496.71 4116.78 16363795
## 2015 Q4 112497432 1.44 1295.24 4042.16 16122008
## 2016 Q1 108618918 0.67 817.30 3338.04 16189519
## 2016 Q2 108920583 0.85 936.67 3241.37 16279062
## 2016 Q3 109251195 0.68 1012.14 3292.73 16305024
## 2016 Q4 112213136 1.16 944.98 3982.25 16393932
## 2017 Q1 112808583 1.15 626.49 4320.77 16489073
## 2017 Q2 112830025 1.47 756.47 4083.58 16691339
## 2017 Q3 113034275 -0.17 857.46 4334.68 16786727
## 2017 Q4 114069026 0.67 987.90 4793.82 16882385
## 2018 Q1 114832042 0.60 1079.79 4596.82 16923178
## 2018 Q2 115033493 1.49 955.92 4462.01 17214524
## 2018 Q3 115347322 0.81 1224.57 4502.21 17299074
## 2018 Q4 119481570 0.32 1298.35 4824.69 17509419
## 2019 Q1 120545081 0.37 648.39 4135.26 17606694
## 2019 Q2 120682397 1.21 524.10 4086.94 17795658
## 2019 Q3 122482428 0.22 611.21 3971.43 17840874
## 2019 Q4 122813276 0.24 720.83 3983.53 17876034
## 2020 Q1 122091036 0.57 736.76 3783.41 17896390
## 2020 Q2 114145307 0.29 269.37 2963.29 17378319
## 2020 Q3 116866297 -0.50 366.52 2698.82 17761551
## 2020 Q4 119290689 0.44 587.65 3517.22 17780086
## 2021 Q1 118303905 0.52 452.02 4072.25 17789886
## 2021 Q2 120555095 0.75 963.32 4886.26 18154428
## 2021 Q3 122311204 -0.05 681.57 7034.26 17783646
## 2021 Q4 123269402 0.89 1232.76 8167.14 17960087
## 2022 Q1 121145445 1.23 1047.99 6147.07 18040877
## 2022 Q2 124923263 2.23 1201.96 9860.42 18558576
## 2022 Q3 128847399 1.21 1455.70 10623.60 18677224
## 2022 Q4 131242800 0.56 1712.34 9427.15 18857007
## 2023 Q1 129613661 1.13 1249.53 7951.04 18957923
## 2023 Q2 133530221 0.80 1379.65 6785.69 19510237
## 2023 Q3 135681546 0.53 1329.99 5864.05 19521290
## 2023 Q4 138804580 0.95 1611.65 6423.91 19840860
## 2024 Q1 139022295 0.86 1017.26 5928.10 19956452
## 2024 Q2 141337704 0.84 1110.66 6228.35 20517210
## 2024 Q3 143165780 -0.44 1240.26 5705.17 20396752
## 2024 Q4 147298228 0.23 1630.06 6804.05 20705738
## 2025 Q1 144698413 0.77 1236.44 5199.20 21025987
## 2025 Q2 147961938 1.09 1158.11 4831.48 21457212
plot(tsdata, nc=1)

#Mengubah Struktur data menjadi time series
Inflasi<-ts(Data$X1)
Impor<-ts(Data$X2)
Ekspor<-ts(Data$X3)
KRT<-ts(Data$X4)
PDRB<-ts(Data$Y)
#Statistika Deskriptif
summary(Data$Y)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 98339373 109432116 114488674 118424499 122730564 147961938
sd(Data$Y)
## [1] 12109182
summary(Data$X1)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## -0.5000 0.5225 0.8450 1.0319 1.2800 4.6800
sd(Data$X1)
## [1] 0.9189667
summary(Data$X2)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 269.4 938.7 1238.3 1316.7 1691.8 2564.8
sd(Data$X2)
## [1] 581.3309
summary(Data$X3)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 2699 4121 5626 5951 7421 10624
sd(Data$X3)
## [1] 2137.862
summary(Data$X4)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 12929271 15823339 17068851 17029882 18020679 21457212
sd(Data$X4)
## [1] 2052964
#Cek Stasioneritas data X1
library(MASS)
library(car)
## Loading required package: carData
library(fUnitRoots)
#Dalam Varians
summary(Inflasi)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## -0.5000 0.5225 0.8450 1.0319 1.2800 4.6800
Inflasi_pos <- Inflasi + 1.5
# lalu jalankan boxcox
boxcox(lm(Inflasi_pos ~ 1))

p<-powerTransform(Inflasi_pos)
p
## Estimated transformation parameter
## Inflasi_pos
## -0.1172399
Inflasi_trans<-(Inflasi_pos^(-0.1172399))
Inflasi_trans
## Time Series:
## Start = 1
## End = 58
## Frequency = 1
## [1] 0.8460919 0.8870339 0.8636926 0.9371261 0.8602762 0.9286622 0.8487544
## [8] 0.9252480 0.8435070 0.8870339 0.8077270 0.9166912 0.8881630 0.9015743
## [15] 0.8794929 0.8227700 0.9117051 0.8840884 0.8866606 0.8812335 0.9131739
## [22] 0.9046822 0.9126818 0.8916346 0.8920284 0.8801852 0.9671184 0.9131739
## [29] 0.9166912 0.8794929 0.9065049 0.9322003 0.9292430 0.8896900 0.9383971
## [36] 0.9371261 0.9182389 0.9340186 1.0000000 0.9252480 0.9208749 0.9093062
## [43] 0.9573731 0.9028938 0.8889234 0.8569844 0.8896900 0.9187603 0.8928211
## [50] 0.9069661 0.9203419 0.9002730 0.9042319 0.9051346 0.9931918 0.9377596
## [57] 0.9083633 0.8944267
p1<-powerTransform(Inflasi_trans)
p1
## Estimated transformation parameter
## Inflasi_trans
## 1
#Dalam rata-rata
adfTest(Inflasi_trans)
##
## Title:
## Augmented Dickey-Fuller Test
##
## Test Results:
## PARAMETER:
## Lag Order: 1
## STATISTIC:
## Dickey-Fuller: 0.0747
## P VALUE:
## 0.6351
##
## Description:
## Mon Oct 13 10:39:02 2025 by user: gita1
Inflasidiff=diff(Inflasi_trans,differences=1)
Inflasidiff
## Time Series:
## Start = 2
## End = 58
## Frequency = 1
## [1] 0.0409419866 -0.0233413252 0.0734334874 -0.0768498860 0.0683859777
## [6] -0.0799077938 0.0764936073 -0.0817409823 0.0435269148 -0.0793069490
## [11] 0.1089641762 -0.0285281534 0.0134112991 -0.0220813634 -0.0567228958
## [16] 0.0889350874 -0.0276167321 0.0025721954 -0.0054270797 0.0319403941
## [21] -0.0084917185 0.0079996185 -0.0210471958 0.0003938168 -0.0118431907
## [26] 0.0869331606 -0.0539444908 0.0035172484 -0.0371982177 0.0270119850
## [31] 0.0256954141 -0.0029572982 -0.0395530110 0.0487070952 -0.0012710322
## [36] -0.0188872324 0.0157797637 0.0659813761 -0.0747520022 -0.0043730972
## [41] -0.0115686911 0.0480669146 -0.0544793301 -0.0139704018 -0.0319389974
## [46] 0.0327056348 0.0290703076 -0.0259392687 0.0141450526 0.0133757807
## [51] -0.0200689397 0.0039589583 0.0009026860 0.0880572338 -0.0554322837
## [56] -0.0293962885 -0.0139365229
adfTest(Inflasidiff)
## Warning in adfTest(Inflasidiff): p-value smaller than printed p-value
##
## Title:
## Augmented Dickey-Fuller Test
##
## Test Results:
## PARAMETER:
## Lag Order: 1
## STATISTIC:
## Dickey-Fuller: -7.0204
## P VALUE:
## 0.01
##
## Description:
## Mon Oct 13 10:39:02 2025 by user: gita1
#Cek Stasioneritas data X2
#Dalam Varians
boxcox(Impor~1)

p<-powerTransform(Impor)
p
## Estimated transformation parameter
## Impor
## 0.5164994
Impor_trans<-(Impor^(0.5164994))
Impor_trans
## Time Series:
## Start = 1
## End = 58
## Frequency = 1
## [1] 45.11617 43.36956 52.00255 51.23984 49.29955 51.95561 47.04222 55.95772
## [9] 56.65965 57.64619 55.14553 50.81549 53.09473 53.85880 51.44323 49.74906
## [17] 41.46211 41.52891 43.64723 40.50672 31.93326 34.26279 35.66194 34.41946
## [25] 27.83585 30.68274 32.73431 35.21822 36.87380 34.62469 39.34972 40.55692
## [33] 28.33425 25.38492 27.48310 29.92740 30.26720 18.00006 21.10352 26.93073
## [41] 23.51729 34.76288 29.07411 39.48543 36.30886 38.97278 43.02538 46.78938
## [49] 39.76196 41.84935 41.06443 45.34751 35.75500 37.41458 39.60933 45.61432
## [57] 39.54627 38.23182
p1<-powerTransform(Impor_trans)
p1
## Estimated transformation parameter
## Impor_trans
## 0.9999999
#Dalam rata-rata
adfTest(Impor_trans)
##
## Title:
## Augmented Dickey-Fuller Test
##
## Test Results:
## PARAMETER:
## Lag Order: 1
## STATISTIC:
## Dickey-Fuller: -0.527
## P VALUE:
## 0.444
##
## Description:
## Mon Oct 13 10:39:02 2025 by user: gita1
Impordiff=diff(Impor_trans,differences=1)
Impordiff
## Time Series:
## Start = 2
## End = 58
## Frequency = 1
## [1] -1.74661072 8.63299145 -0.76271413 -1.94028921 2.65606472
## [6] -4.91339814 8.91550327 0.70192783 0.98654141 -2.50066178
## [11] -4.33003944 2.27924520 0.76406586 -2.41556754 -1.69416831
## [16] -8.28695274 0.06680087 2.11832112 -3.14051488 -8.57345313
## [21] 2.32952527 1.39915147 -1.24248411 -6.58360624 2.84689427
## [26] 2.05156738 2.48391375 1.65557811 -2.24910903 4.72502968
## [31] 1.20719853 -12.22266909 -2.94933392 2.09817963 2.44429901
## [36] 0.33979766 -12.26713676 3.10346205 5.82721204 -3.41343942
## [41] 11.24558388 -5.68876531 10.41132154 -3.17657027 2.66391327
## [46] 4.05260512 3.76399914 -7.02741856 2.08739272 -0.78492352
## [51] 4.28307501 -9.59250419 1.65957389 2.19475194 6.00499448
## [56] -6.06805269 -1.31445257
adfTest(Impordiff)
## Warning in adfTest(Impordiff): p-value smaller than printed p-value
##
## Title:
## Augmented Dickey-Fuller Test
##
## Test Results:
## PARAMETER:
## Lag Order: 1
## STATISTIC:
## Dickey-Fuller: -6.475
## P VALUE:
## 0.01
##
## Description:
## Mon Oct 13 10:39:02 2025 by user: gita1
#Cek Stasioneritas data X3
#Dalam Varians
boxcox(Ekspor~1)

p<-powerTransform(Ekspor)
p
## Estimated transformation parameter
## Ekspor
## -0.1096758
Ekspor_trans<-(Ekspor^(-0.1096758))
Ekspor_trans
## Time Series:
## Start = 1
## End = 58
## Frequency = 1
## [1] 0.3770915 0.3618386 0.3626223 0.3643910 0.3701124 0.3687096 0.3748277
## [8] 0.3704782 0.3755385 0.3749837 0.3777307 0.3760042 0.3813511 0.3816978
## [15] 0.3828290 0.3884740 0.3935383 0.3985286 0.4013936 0.4021997 0.4107317
## [22] 0.4120577 0.4113478 0.4028590 0.3992702 0.4017503 0.3991295 0.3947465
## [29] 0.3965674 0.3978642 0.3974730 0.3944687 0.4011965 0.4017140 0.4029792
## [36] 0.4028448 0.4051285 0.4161313 0.4204199 0.4083831 0.4018727 0.3939205
## [43] 0.3784890 0.3723408 0.3841270 0.3647257 0.3617557 0.3665276 0.3734375
## [50] 0.3799854 0.3861179 0.3822756 0.3856581 0.3835739 0.3872828 0.3798728
## [57] 0.3912476 0.3944079
p1<-powerTransform(Ekspor_trans)
p1
## Estimated transformation parameter
## Ekspor_trans
## 0.9999989
#Dalam rata-rata
adfTest(Ekspor_trans)
##
## Title:
## Augmented Dickey-Fuller Test
##
## Test Results:
## PARAMETER:
## Lag Order: 1
## STATISTIC:
## Dickey-Fuller: 0.6064
## P VALUE:
## 0.804
##
## Description:
## Mon Oct 13 10:39:02 2025 by user: gita1
Ekspordiff=diff(Ekspor_trans,differences=1)
Ekspordiff
## Time Series:
## Start = 2
## End = 58
## Frequency = 1
## [1] -0.0152528761 0.0007836920 0.0017687511 0.0057213624 -0.0014028121
## [6] 0.0061180860 -0.0043494822 0.0050602772 -0.0005547720 0.0027469840
## [11] -0.0017264817 0.0053469344 0.0003467077 0.0011311742 0.0056449592
## [16] 0.0050642820 0.0049903229 0.0028650690 0.0008060846 0.0085319889
## [21] 0.0013259745 -0.0007098599 -0.0084888801 -0.0035887341 0.0024800512
## [26] -0.0026207755 -0.0043829994 0.0018209315 0.0012967283 -0.0003911817
## [31] -0.0030042809 0.0067278257 0.0005175136 0.0012651526 -0.0001344308
## [36] 0.0022837224 0.0110028281 0.0042885826 -0.0120368215 -0.0065103547
## [41] -0.0079522505 -0.0154314816 -0.0061482123 0.0117861891 -0.0194012941
## [46] -0.0029699269 0.0047718319 0.0069098927 0.0065478937 0.0061325173
## [51] -0.0038423001 0.0033825387 -0.0020841631 0.0037088750 -0.0074100592
## [56] 0.0113748366 0.0031602551
adfTest(Ekspordiff)
## Warning in adfTest(Ekspordiff): p-value smaller than printed p-value
##
## Title:
## Augmented Dickey-Fuller Test
##
## Test Results:
## PARAMETER:
## Lag Order: 1
## STATISTIC:
## Dickey-Fuller: -4.6948
## P VALUE:
## 0.01
##
## Description:
## Mon Oct 13 10:39:02 2025 by user: gita1
#Cek Stasioneritas data X4
#Dalam Varians
boxcox(KRT~1)

p<-powerTransform(KRT)
p
## Estimated transformation parameter
## KRT
## 0.6302204
KRT_trans<-(KRT^(0.6302204))
KRT_trans
## Time Series:
## Start = 1
## End = 58
## Frequency = 1
## [1] 30329.07 30752.07 31474.33 31672.32 31801.22 32304.19 33108.89 33186.20
## [9] 31801.22 32304.19 33108.89 33186.20 34190.93 34196.73 34610.59 34716.30
## [17] 34424.74 34511.56 35183.33 34854.80 34946.71 35068.40 35103.64 35224.15
## [25] 35352.84 35625.53 35753.70 35881.97 35936.58 36325.25 36437.59 36716.19
## [33] 36844.61 37093.33 37152.70 37198.83 37225.52 36542.70 37048.51 37072.87
## [41] 37085.75 37562.88 37077.55 37308.96 37414.64 38087.73 38241.01 38472.58
## [49] 38602.21 39307.21 39321.24 39725.69 39871.40 40573.84 40423.55 40808.40
## [57] 41205.05 41735.64
p1<-powerTransform(KRT_trans)
p1
## Estimated transformation parameter
## KRT_trans
## 1
#Dalam rata-rata
adfTest(KRT_trans)
## Warning in adfTest(KRT_trans): p-value greater than printed p-value
##
## Title:
## Augmented Dickey-Fuller Test
##
## Test Results:
## PARAMETER:
## Lag Order: 1
## STATISTIC:
## Dickey-Fuller: 3.888
## P VALUE:
## 0.99
##
## Description:
## Mon Oct 13 10:39:02 2025 by user: gita1
KRTdiff=diff(KRT_trans,differences=1)
KRTdiff
## Time Series:
## Start = 2
## End = 58
## Frequency = 1
## [1] 423.006325 722.260677 197.986859 128.900728 502.969297
## [6] 804.703668 77.304397 -1384.977363 502.969297 804.703668
## [11] 77.304397 1004.727892 5.804872 413.858466 105.714742
## [16] -291.566739 86.826142 671.762087 -328.527697 91.912105
## [21] 121.690269 35.236522 120.510295 128.692178 272.686717
## [26] 128.172933 128.266360 54.617428 388.670620 112.337643
## [31] 278.599205 128.420915 248.719085 59.369671 46.127249
## [36] 26.690289 -682.820316 505.813235 24.360659 12.875926
## [41] 477.134394 -485.332588 231.412701 105.680677 673.090683
## [46] 153.277796 231.573025 129.629161 704.993733 14.032010
## [51] 404.455050 145.702768 702.445272 -150.290065 384.852935
## [56] 396.647171 530.586394
adfTest(KRTdiff)
## Warning in adfTest(KRTdiff): p-value smaller than printed p-value
##
## Title:
## Augmented Dickey-Fuller Test
##
## Test Results:
## PARAMETER:
## Lag Order: 1
## STATISTIC:
## Dickey-Fuller: -4.5792
## P VALUE:
## 0.01
##
## Description:
## Mon Oct 13 10:39:02 2025 by user: gita1
#Cek Stasioneritas data Y
library(car)
#Dalam Varians
boxcox(PDRB~1)

q<-powerTransform(PDRB)
## Warning in estimateTransform.default(X, Y, weights, family, ...): Convergence
## failure: return code = 52
q
## Estimated transformation parameter
## PDRB
## -1.564958
PDRB_trans<-(PDRB^(-1.564958))
PDRB_trans
## Time Series:
## Start = 1
## End = 58
## Frequency = 1
## [1] 3.102539e-13 3.029278e-13 2.905131e-13 2.731213e-13 2.712475e-13
## [6] 2.717589e-13 2.752501e-13 2.658557e-13 2.603424e-13 2.596367e-13
## [11] 2.640973e-13 2.628235e-13 2.608219e-13 2.587891e-13 2.519399e-13
## [16] 2.482382e-13 2.634941e-13 2.614055e-13 2.629521e-13 2.513622e-13
## [21] 2.655495e-13 2.643994e-13 2.631483e-13 2.523595e-13 2.502780e-13
## [26] 2.502036e-13 2.494964e-13 2.459636e-13 2.434108e-13 2.427440e-13
## [31] 2.417112e-13 2.287512e-13 2.256007e-13 2.251991e-13 2.200413e-13
## [36] 2.191144e-13 2.211462e-13 2.457064e-13 2.368128e-13 2.293242e-13
## [41] 2.323248e-13 2.255714e-13 2.205236e-13 2.178469e-13 2.238535e-13
## [46] 2.133503e-13 2.032695e-13 1.974935e-13 2.013920e-13 1.922247e-13
## [51] 1.874764e-13 1.809173e-13 1.804741e-13 1.758687e-13 1.723670e-13
## [56] 1.648595e-13 1.695184e-13 1.637037e-13
p2<-powerTransform(PDRB_trans)
## Warning in estimateTransform.default(X, Y, weights, family, ...): Convergence
## failure: return code = 52
p2
## Estimated transformation parameter
## PDRB_trans
## 0.936129
#Dalam rata-rata
adfTest(PDRB_trans)
## Warning in adfTest(PDRB_trans): p-value smaller than printed p-value
##
## Title:
## Augmented Dickey-Fuller Test
##
## Test Results:
## PARAMETER:
## Lag Order: 1
## STATISTIC:
## Dickey-Fuller: -2.6828
## P VALUE:
## 0.01
##
## Description:
## Mon Oct 13 10:39:02 2025 by user: gita1
#library(writexl)
#getwd()
#diff1=as.data.frame(Inflasidiff)
#write_xlsx(diff1,"C:/Users/gita1/Downloads/PKL GITA 2025/ANALISIS TRAND PENDAPATAN KALTIM/Inflasidifferencing.xlsx")
#diff2=as.data.frame(Impordiff)
#write_xlsx(diff2,"C:/Users/gita1/Downloads/PKL GITA 2025/ANALISIS TRAND PENDAPATAN KALTIM/Impordifferencing.xlsx")
#diff3=as.data.frame(Ekspordiff)
#write_xlsx(diff3,"C:/Users/gita1/Downloads/PKL GITA 2025/ANALISIS TRAND PENDAPATAN KALTIM/Ekspordifferencing.xlsx")
#diff4=as.data.frame(KRTdiff)
#write_xlsx(diff4,"C:/Users/gita1/Downloads/PKL GITA 2025/ANALISIS TRAND PENDAPATAN KALTIM/KRTdifferencing.xlsx")
#trans1=as.data.frame(PDRB_trans)
#write_xlsx(trans1,"C:/Users/gita1/Downloads/PKL GITA 2025/ANALISIS TRAND PENDAPATAN KALTIM/PDRB_trans.xlsx")
#Gabungkan data hasil differencing pada excel
datad=read.table(file.choose(),header = TRUE)
datad
## Y_trans X1_diff X2_diff X3_diff X4_diff
## 1 3.10254e-13 0.040941987 -1.74661072 -0.015252876 423.006325
## 2 3.02928e-13 -0.023341325 8.63299146 0.000783692 722.260677
## 3 2.90513e-13 0.073433487 -0.76271413 0.001768751 197.986859
## 4 2.73121e-13 -0.076849886 -1.94028921 0.005721362 128.900728
## 5 2.71247e-13 0.068385978 2.65606472 -0.001402812 502.969297
## 6 2.71759e-13 -0.079907794 -4.91339814 0.006118086 804.703668
## 7 2.75250e-13 0.076493607 8.91550327 -0.004349482 77.304397
## 8 2.65856e-13 -0.081740982 0.70192782 0.005060277 -1384.977363
## 9 2.60342e-13 0.043526915 0.98654142 -0.000554772 502.969297
## 10 2.59637e-13 -0.079306949 -2.50066179 0.002746984 804.703668
## 11 2.64097e-13 0.108964176 -4.33003944 -0.001726482 77.304397
## 12 2.62823e-13 -0.028528153 2.27924520 0.005346934 1004.727892
## 13 2.60822e-13 0.013411299 0.76406586 0.000346708 5.804872
## 14 2.58789e-13 -0.022081363 -2.41556754 0.001131174 413.858466
## 15 2.51940e-13 -0.056722896 -1.69416831 0.005644959 105.714742
## 16 2.48238e-13 0.088935087 -8.28695274 0.005064282 -291.566739
## 17 2.63494e-13 -0.027616732 0.06680087 0.004990323 86.826142
## 18 2.61406e-13 0.002572195 2.11832112 0.002865069 671.762087
## 19 2.62952e-13 -0.005427080 -3.14051488 0.000806085 -328.527697
## 20 2.51362e-13 0.031940394 -8.57345313 0.008531989 91.912105
## 21 2.65549e-13 -0.008491718 2.32952527 0.001325974 121.690269
## 22 2.64399e-13 0.007999618 1.39915147 -0.000709860 35.236522
## 23 2.63148e-13 -0.021047196 -1.24248411 -0.008488880 120.510295
## 24 2.52360e-13 0.000393817 -6.58360624 -0.003588734 128.692178
## 25 2.50278e-13 -0.011843191 2.84689427 0.002480051 272.686717
## 26 2.50204e-13 0.086933161 2.05156738 -0.002620775 128.172933
## 27 2.49496e-13 -0.053944491 2.48391375 -0.004382999 128.266360
## 28 2.45964e-13 0.003517248 1.65557811 0.001820932 54.617428
## 29 2.43411e-13 -0.037198218 -2.24910903 0.001296728 388.670620
## 30 2.42744e-13 0.027011985 4.72502968 -0.000391182 112.337643
## 31 2.41711e-13 0.025695414 1.20719853 -0.003004281 278.599205
## 32 2.28751e-13 -0.002957298 -12.22266909 0.006727826 128.420915
## 33 2.25601e-13 -0.039553011 -2.94933392 0.000517514 248.719085
## 34 2.25199e-13 0.048707095 2.09817963 0.001265153 59.369671
## 35 2.20041e-13 -0.001271032 2.44429901 -0.000134431 46.127249
## 36 2.19114e-13 -0.018887232 0.33979765 0.002283722 26.690289
## 37 2.21146e-13 0.015779764 -12.26713676 0.011002828 -682.820316
## 38 2.45706e-13 0.065981376 3.10346205 0.004288583 505.813235
## 39 2.36813e-13 -0.074752002 5.82721204 -0.012036822 24.360659
## 40 2.29324e-13 -0.004373097 -3.41343942 -0.006510355 12.875926
## 41 2.32325e-13 -0.011568691 11.24558388 -0.007952250 477.134394
## 42 2.25571e-13 0.048066915 -5.68876531 -0.015431482 -485.332588
## 43 2.20524e-13 -0.054479330 10.41132154 -0.006148212 231.412701
## 44 2.17847e-13 -0.013970402 -3.17657027 0.011786189 105.680677
## 45 2.23854e-13 -0.031938997 2.66391327 -0.019401294 673.090683
## 46 2.13350e-13 0.032705635 4.05260513 -0.002969927 153.277796
## 47 2.03270e-13 0.029070308 3.76399914 0.004771832 231.573025
## 48 1.97494e-13 -0.025939269 -7.02741856 0.006909893 129.629161
## 49 2.01392e-13 0.014145053 2.08739272 0.006547894 704.993733
## 50 1.92225e-13 0.013375781 -0.78492352 0.006132517 14.032010
## 51 1.87476e-13 -0.020068940 4.28307501 -0.003842300 404.455050
## 52 1.80917e-13 0.003958958 -9.59250419 0.003382539 145.702768
## 53 1.80474e-13 0.000902686 1.65957389 -0.002084163 702.445272
## 54 1.75869e-13 0.088057234 2.19475194 0.003708875 -150.290065
## 55 1.72367e-13 -0.055432284 6.00499448 -0.007410059 384.852935
## 56 1.64859e-13 -0.029396289 -6.06805269 0.011374837 396.647171
## 57 1.69518e-13 -0.013936523 -1.31445257 0.003160255 530.586394
#Menentukan Lag Optimal (pakai max 6 karena Hindari overfitting dan kekurangan derajat bebas)
library(vars)
## Warning: package 'vars' was built under R version 4.4.3
## Loading required package: strucchange
## Warning: package 'strucchange' was built under R version 4.4.3
## Loading required package: zoo
##
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
## Loading required package: sandwich
## Loading required package: urca
## Warning: package 'urca' was built under R version 4.4.3
##
## Attaching package: 'urca'
## The following objects are masked from 'package:fUnitRoots':
##
## punitroot, qunitroot, unitrootTable
## Loading required package: lmtest
VARselect(datad, lag.max = 6, type = "const")
## $selection
## AIC(n) HQ(n) SC(n) FPE(n)
## 6 1 1 3
##
## $criteria
## 1 2 3 4 5
## AIC(n) -6.721012e+01 -6.716209e+01 -6.748351e+01 -6.709310e+01 -6.745728e+01
## HQ(n) -6.677588e+01 -6.636598e+01 -6.632554e+01 -6.557326e+01 -6.557557e+01
## SC(n) -6.607376e+01 -6.507875e+01 -6.445320e+01 -6.311581e+01 -6.253302e+01
## FPE(n) 6.507157e-30 7.027822e-30 5.493186e-30 9.432363e-30 8.558132e-30
## 6
## AIC(n) -6.833409e+01
## HQ(n) -6.609052e+01
## SC(n) -6.246285e+01
## FPE(n) 5.584347e-30
#Estimasi Model VAR
var=VAR(datad, p=1)
var
##
## VAR Estimation Results:
## =======================
##
## Estimated coefficients for equation Y_trans:
## ============================================
## Call:
## Y_trans = Y_trans.l1 + X1_diff.l1 + X2_diff.l1 + X3_diff.l1 + X4_diff.l1 + const
##
## Y_trans.l1 X1_diff.l1 X2_diff.l1 X3_diff.l1 X4_diff.l1
## 9.868653e-01 -2.537890e-15 -5.735011e-16 3.259448e-13 -1.171701e-18
## const
## 7.154976e-16
##
##
## Estimated coefficients for equation X1_diff:
## ============================================
## Call:
## X1_diff = Y_trans.l1 + X1_diff.l1 + X2_diff.l1 + X3_diff.l1 + X4_diff.l1 + const
##
## Y_trans.l1 X1_diff.l1 X2_diff.l1 X3_diff.l1 X4_diff.l1
## 6.329326e+10 -6.186706e-01 -3.767460e-04 7.854599e-01 7.418299e-06
## const
## -1.597665e-02
##
##
## Estimated coefficients for equation X2_diff:
## ============================================
## Call:
## X2_diff = Y_trans.l1 + X1_diff.l1 + X2_diff.l1 + X3_diff.l1 + X4_diff.l1 + const
##
## Y_trans.l1 X1_diff.l1 X2_diff.l1 X3_diff.l1 X4_diff.l1
## 6.452898e+12 1.553943e+01 -3.346401e-01 -1.416011e+02 8.146874e-05
## const
## -1.663842e+00
##
##
## Estimated coefficients for equation X3_diff:
## ============================================
## Call:
## X3_diff = Y_trans.l1 + X1_diff.l1 + X2_diff.l1 + X3_diff.l1 + X4_diff.l1 + const
##
## Y_trans.l1 X1_diff.l1 X2_diff.l1 X3_diff.l1 X4_diff.l1
## -5.466110e+09 1.122762e-03 1.369215e-06 4.903776e-02 2.043218e-07
## const
## 1.834179e-03
##
##
## Estimated coefficients for equation X4_diff:
## ============================================
## Call:
## X4_diff = Y_trans.l1 + X1_diff.l1 + X2_diff.l1 + X3_diff.l1 + X4_diff.l1 + const
##
## Y_trans.l1 X1_diff.l1 X2_diff.l1 X3_diff.l1 X4_diff.l1
## -5.296447e+14 2.870841e+02 -3.058494e+01 -2.682922e+03 -3.547762e-02
## const
## 3.268668e+02
#Uji Kestabilan
roots(var)
## [1] 0.98225878 0.62467877 0.28767932 0.08895192 0.06616596
#Kausalitas Granger
library(lmtest)
grangertest(X1_diff~Y_trans, data=datad)
## Granger causality test
##
## Model 1: X1_diff ~ Lags(X1_diff, 1:1) + Lags(Y_trans, 1:1)
## Model 2: X1_diff ~ Lags(X1_diff, 1:1)
## Res.Df Df F Pr(>F)
## 1 53
## 2 54 -1 0.0774 0.7819
grangertest(Y_trans~X1_diff, data=datad)
## Granger causality test
##
## Model 1: Y_trans ~ Lags(Y_trans, 1:1) + Lags(X1_diff, 1:1)
## Model 2: Y_trans ~ Lags(Y_trans, 1:1)
## Res.Df Df F Pr(>F)
## 1 53
## 2 54 -1 7e-04 0.9795
grangertest(X2_diff~Y_trans, data=datad)
## Granger causality test
##
## Model 1: X2_diff ~ Lags(X2_diff, 1:1) + Lags(Y_trans, 1:1)
## Model 2: X2_diff ~ Lags(X2_diff, 1:1)
## Res.Df Df F Pr(>F)
## 1 53
## 2 54 -1 0.2566 0.6145
grangertest(Y_trans~X2_diff, data=datad) #ada hubungan
## Granger causality test
##
## Model 1: Y_trans ~ Lags(Y_trans, 1:1) + Lags(X2_diff, 1:1)
## Model 2: Y_trans ~ Lags(Y_trans, 1:1)
## Res.Df Df F Pr(>F)
## 1 53
## 2 54 -1 23.913 9.765e-06 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
grangertest(X3_diff~Y_trans, data=datad)
## Granger causality test
##
## Model 1: X3_diff ~ Lags(X3_diff, 1:1) + Lags(Y_trans, 1:1)
## Model 2: X3_diff ~ Lags(X3_diff, 1:1)
## Res.Df Df F Pr(>F)
## 1 53
## 2 54 -1 0.0418 0.8388
grangertest(Y_trans~X3_diff, data=datad) #ada hubungan
## Granger causality test
##
## Model 1: Y_trans ~ Lags(Y_trans, 1:1) + Lags(X3_diff, 1:1)
## Model 2: Y_trans ~ Lags(Y_trans, 1:1)
## Res.Df Df F Pr(>F)
## 1 53
## 2 54 -1 15.476 0.0002446 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
grangertest(X4_diff~Y_trans, data=datad)
## Granger causality test
##
## Model 1: X4_diff ~ Lags(X4_diff, 1:1) + Lags(Y_trans, 1:1)
## Model 2: X4_diff ~ Lags(X4_diff, 1:1)
## Res.Df Df F Pr(>F)
## 1 53
## 2 54 -1 0.2169 0.6434
grangertest(Y_trans~X4_diff, data=datad)
## Granger causality test
##
## Model 1: Y_trans ~ Lags(Y_trans, 1:1) + Lags(X4_diff, 1:1)
## Model 2: Y_trans ~ Lags(Y_trans, 1:1)
## Res.Df Df F Pr(>F)
## 1 53
## 2 54 -1 2.3877 0.1282
#Uji Impulse Response Function
IRF1 <- irf(var,impulse = "X1_diff", response = "X1_diff")
plot(IRF1, main = "Shock Inflasi to Inflasi")

IRF2<- irf(var,impulse = "X1_diff", response = "Y_trans")
plot(IRF2, main = "Shock Inflasi to PDRB")

IRF3 <- irf(var,impulse = "X2_diff", response = "X2_diff")
plot(IRF3, main = "Shock Impor to Impor")

IRF4<- irf(var,impulse = "X2_diff", response = "Y_trans")
plot(IRF4, main = "Shock Impor to PDRB")

IRF5 <- irf(var,impulse = "X3_diff", response = "X3_diff")
plot(IRF5, main = "Shock Ekspor to Ekspor")

IRF6<- irf(var,impulse = "X3_diff", response = "Y_trans")
plot(IRF6, main = "Shock Ekspor to PDRB")

IRF7 <- irf(var,impulse = "X4_diff", response = "X4_diff")
plot(IRF7, main = "Shock Konsumsi Rumah Tangga to Konsumsi Rumah Tangga")

IRF8<- irf(var,impulse = "X4_diff", response = "Y_trans")
plot(IRF8, main = "Shock Konsumsi Rumah Tangga to PDRB")

IRF9 <- irf(var,impulse = "Y_trans", response = "Y_trans")
plot(IRF9, main = "Shock PDRB to PDRB")

IRF10<- irf(var,impulse = "Y_trans", response = "X1_diff")
plot(IRF10, main = "Shock PDRB to Inflasi")

IRF11<- irf(var,impulse = "Y_trans", response = "X2_diff")
plot(IRF11, main = "Shock PDRB to Impor")

IRF12<- irf(var,impulse = "Y_trans", response = "X3_diff")
plot(IRF12, main = "Shock PDRB to Ekspor")

IRF13<- irf(var,impulse = "Y_trans", response = "X4_diff")
plot(IRF13, main = "Shock PDRB to Konsumsi Rumah Tangga")

#Variance Decomposition
VD=fevd(var)
VD
## $Y_trans
## Y_trans X1_diff X2_diff X3_diff X4_diff
## [1,] 1.0000000 0.0000000000 0.0000000 0.00000000 0.000000000
## [2,] 0.7508852 0.0003382056 0.2012357 0.04523315 0.002307740
## [3,] 0.7045742 0.0013559298 0.2115853 0.07958570 0.002898827
## [4,] 0.6794856 0.0010490250 0.2262726 0.08999667 0.003196161
## [5,] 0.6643063 0.0013153541 0.2328951 0.09817892 0.003304324
## [6,] 0.6551522 0.0011885716 0.2375369 0.10269718 0.003425179
## [7,] 0.6481754 0.0012460966 0.2408293 0.10626974 0.003479422
## [8,] 0.6433102 0.0011992346 0.2432230 0.10872999 0.003537618
## [9,] 0.6393752 0.0012101242 0.2451108 0.11073158 0.003572315
## [10,] 0.6363523 0.0011912198 0.2465854 0.11226539 0.003605670
##
## $X1_diff
## Y_trans X1_diff X2_diff X3_diff X4_diff
## [1,] 0.02684614 0.9731539 0.000000000 0.00000000 0.000000000
## [2,] 0.02828598 0.9517445 0.006408352 0.01015014 0.003411077
## [3,] 0.02896961 0.9487328 0.006487117 0.01145453 0.004355977
## [4,] 0.02882420 0.9478337 0.006517445 0.01217578 0.004648844
## [5,] 0.02897607 0.9474330 0.006458322 0.01236858 0.004764041
## [6,] 0.02891281 0.9473148 0.006465092 0.01250647 0.004800849
## [7,] 0.02896952 0.9472343 0.006451985 0.01252527 0.004818886
## [8,] 0.02894962 0.9472114 0.006459398 0.01255608 0.004823460
## [9,] 0.02897517 0.9471848 0.006458007 0.01255530 0.004826707
## [10,] 0.02897205 0.9471732 0.006463329 0.01256435 0.004827060
##
## $X2_diff
## Y_trans X1_diff X2_diff X3_diff X4_diff
## [1,] 0.03171650 0.003097066 0.9651864 0.00000000 0.000000e+00
## [2,] 0.02915142 0.010759649 0.9365680 0.02349056 3.036532e-05
## [3,] 0.02864873 0.020472259 0.9243134 0.02652514 4.047106e-05
## [4,] 0.02869947 0.025972696 0.9183655 0.02687713 8.521777e-05
## [5,] 0.02862611 0.028516812 0.9157197 0.02702989 1.074490e-04
## [6,] 0.02870610 0.029553355 0.9145984 0.02701879 1.233281e-04
## [7,] 0.02869322 0.029984614 0.9141483 0.02704676 1.270529e-04
## [8,] 0.02873912 0.030145309 0.9139444 0.02704059 1.306136e-04
## [9,] 0.02874719 0.030213427 0.9138566 0.02705188 1.309081e-04
## [10,] 0.02877730 0.030235958 0.9138033 0.02705156 1.318501e-04
##
## $X3_diff
## Y_trans X1_diff X2_diff X3_diff X4_diff
## [1,] 0.01197819 0.0001955872 0.2110338 0.7767925 0.0000000000
## [2,] 0.01203121 0.0002245936 0.2108691 0.7767490 0.0001260622
## [3,] 0.01206875 0.0002365204 0.2108660 0.7767018 0.0001269914
## [4,] 0.01208400 0.0002399466 0.2108744 0.7766746 0.0001269967
## [5,] 0.01210415 0.0002403483 0.2108738 0.7766544 0.0001272263
## [6,] 0.01212107 0.0002407393 0.2108760 0.7766349 0.0001273006
## [7,] 0.01213859 0.0002407390 0.2108773 0.7766160 0.0001274342
## [8,] 0.01215485 0.0002408433 0.2108788 0.7765980 0.0001275280
## [9,] 0.01217090 0.0002408426 0.2108801 0.7765805 0.0001276378
## [10,] 0.01218617 0.0002408891 0.2108815 0.7765637 0.0001277320
##
## $X4_diff
## Y_trans X1_diff X2_diff X3_diff X4_diff
## [1,] 0.000241029 0.02338686 0.04450538 0.0007775684 0.9310892
## [2,] 0.004654483 0.02017356 0.17262042 0.0022152315 0.8003363
## [3,] 0.004570929 0.02259001 0.18142365 0.0059813559 0.7854341
## [4,] 0.004562989 0.02528884 0.18122681 0.0068937197 0.7820276
## [5,] 0.004734395 0.02672802 0.18103168 0.0069584853 0.7805474
## [6,] 0.004742294 0.02740437 0.18089695 0.0070510689 0.7799053
## [7,] 0.004849898 0.02766531 0.18084550 0.0070481778 0.7795911
## [8,] 0.004879785 0.02778000 0.18083556 0.0070773206 0.7794273
## [9,] 0.004951237 0.02781694 0.18083045 0.0070807120 0.7793207
## [10,] 0.004991989 0.02783438 0.18083640 0.0070967884 0.7792404
plot(VD)

#Peramalan
fc=predict(var)
fc
## $Y_trans
## fcst lower upper CI
## [1,] 1.692045e-13 1.580750e-13 1.803340e-13 1.112952e-14
## [2,] 1.681899e-13 1.512912e-13 1.850886e-13 1.689871e-14
## [3,] 1.669327e-13 1.461307e-13 1.877347e-13 2.080200e-14
## [4,] 1.659254e-13 1.418927e-13 1.899581e-13 2.403270e-14
## [5,] 1.647527e-13 1.379872e-13 1.915183e-13 2.676557e-14
## [6,] 1.637269e-13 1.345612e-13 1.928925e-13 2.916565e-14
## [7,] 1.626371e-13 1.313319e-13 1.939422e-13 3.130517e-14
## [8,] 1.616189e-13 1.283789e-13 1.948590e-13 3.324005e-14
## [9,] 1.605858e-13 1.255807e-13 1.955910e-13 3.500516e-14
## [10,] 1.595918e-13 1.229639e-13 1.962197e-13 3.662790e-14
##
## $X1_diff
## fcst lower upper CI
## [1,] 1.028833e-02 -0.06331825 0.08389490 0.07360657
## [2,] -8.618527e-03 -0.09661977 0.07938271 0.08800124
## [3,] 2.786188e-03 -0.08995093 0.09552331 0.09273712
## [4,] -4.338998e-03 -0.09882055 0.09014255 0.09448155
## [5,] 3.040291e-05 -0.09511692 0.09517772 0.09514732
## [6,] -2.748808e-03 -0.09815309 0.09265548 0.09540429
## [7,] -1.070250e-03 -0.09657521 0.09443471 0.09550496
## [8,] -2.172800e-03 -0.09771712 0.09337152 0.09554432
## [9,] -1.537826e-03 -0.09709803 0.09402238 0.09556021
## [10,] -1.987081e-03 -0.09755376 0.09357960 0.09556668
##
## $X2_diff
## fcst lower upper CI
## [1,] -0.7509262 -10.54388 9.042024 9.79295
## [2,] -0.3041163 -10.54724 9.939006 10.24312
## [3,] -0.7355834 -11.06863 9.597464 10.33305
## [4,] -0.4207270 -10.78938 9.947925 10.36865
## [5,] -0.6438876 -11.02751 9.739734 10.38362
## [6,] -0.5101645 -10.90020 9.879876 10.39004
## [7,] -0.6052112 -10.99790 9.787479 10.39269
## [8,] -0.5554380 -10.94933 9.838451 10.39389
## [9,] -0.5964522 -10.99091 9.798010 10.39446
## [10,] -0.5804359 -10.97525 9.814375 10.39481
##
## $X3_diff
## fcst lower upper CI
## [1,] 0.001153510 -0.01143896 0.01374598 0.01259247
## [2,] 0.001026637 -0.01158155 0.01363482 0.01260818
## [3,] 0.001006442 -0.01160213 0.01361501 0.01260857
## [4,] 0.001020777 -0.01158803 0.01362959 0.01260881
## [5,] 0.001023062 -0.01158595 0.01363207 0.01260901
## [6,] 0.001031771 -0.01157743 0.01364097 0.01260920
## [7,] 0.001036730 -0.01157265 0.01364611 0.01260938
## [8,] 0.001043727 -0.01156583 0.01365328 0.01260956
## [9,] 0.001049307 -0.01156042 0.01365903 0.01260973
## [10,] 0.001055585 -0.01155431 0.01366548 0.01260989
##
## $X4_diff
## fcst lower upper CI
## [1,] 245.9814 -472.0355 963.9982 718.0169
## [2,] 251.3476 -523.5907 1026.2860 774.9384
## [3,] 232.9415 -549.3142 1015.1972 782.2557
## [4,] 250.7851 -533.1747 1034.7448 783.9598
## [5,] 238.9717 -545.7393 1023.6826 784.7109
## [6,] 248.0855 -536.9506 1033.1215 785.0360
## [7,] 243.3943 -541.8029 1028.5916 785.1973
## [8,] 247.5136 -537.7664 1032.7935 785.2799
## [9,] 246.0491 -539.2855 1031.3837 785.3346
## [10,] 248.0699 -537.3051 1033.4450 785.3750
fc <- predict(var, n.ahead = 6)
fc
## $Y_trans
## fcst lower upper CI
## [1,] 1.692045e-13 1.580750e-13 1.803340e-13 1.112952e-14
## [2,] 1.681899e-13 1.512912e-13 1.850886e-13 1.689871e-14
## [3,] 1.669327e-13 1.461307e-13 1.877347e-13 2.080200e-14
## [4,] 1.659254e-13 1.418927e-13 1.899581e-13 2.403270e-14
## [5,] 1.647527e-13 1.379872e-13 1.915183e-13 2.676557e-14
## [6,] 1.637269e-13 1.345612e-13 1.928925e-13 2.916565e-14
##
## $X1_diff
## fcst lower upper CI
## [1,] 1.028833e-02 -0.06331825 0.08389490 0.07360657
## [2,] -8.618527e-03 -0.09661977 0.07938271 0.08800124
## [3,] 2.786188e-03 -0.08995093 0.09552331 0.09273712
## [4,] -4.338998e-03 -0.09882055 0.09014255 0.09448155
## [5,] 3.040291e-05 -0.09511692 0.09517772 0.09514732
## [6,] -2.748808e-03 -0.09815309 0.09265548 0.09540429
##
## $X2_diff
## fcst lower upper CI
## [1,] -0.7509262 -10.54388 9.042024 9.79295
## [2,] -0.3041163 -10.54724 9.939006 10.24312
## [3,] -0.7355834 -11.06863 9.597464 10.33305
## [4,] -0.4207270 -10.78938 9.947925 10.36865
## [5,] -0.6438876 -11.02751 9.739734 10.38362
## [6,] -0.5101645 -10.90020 9.879876 10.39004
##
## $X3_diff
## fcst lower upper CI
## [1,] 0.001153510 -0.01143896 0.01374598 0.01259247
## [2,] 0.001026637 -0.01158155 0.01363482 0.01260818
## [3,] 0.001006442 -0.01160213 0.01361501 0.01260857
## [4,] 0.001020777 -0.01158803 0.01362959 0.01260881
## [5,] 0.001023062 -0.01158595 0.01363207 0.01260901
## [6,] 0.001031771 -0.01157743 0.01364097 0.01260920
##
## $X4_diff
## fcst lower upper CI
## [1,] 245.9814 -472.0355 963.9982 718.0169
## [2,] 251.3476 -523.5907 1026.2860 774.9384
## [3,] 232.9415 -549.3142 1015.1972 782.2557
## [4,] 250.7851 -533.1747 1034.7448 783.9598
## [5,] 238.9717 -545.7393 1023.6826 784.7109
## [6,] 248.0855 -536.9506 1033.1215 785.0360
# ==========================================
# KONVERSI HASIL PERAMALAN PDRB KE SKALA ASLI (RUPIAH)
# ==========================================
# Nilai lambda hasil transformasi Box-Cox PDRB
lambda_Y <- -1.564958
# Ambil hasil peramalan dari variabel Y
fc_Y <- fc$fcst$Y_trans # kolom: forecast, lower, upper
# Fungsi inverse Box-Cox (untuk lambda ≠ 0)
inverse_boxcox <- function(x, lambda) {
ifelse(is.na(x), NA, x^(1/lambda))
}
# Konversi hasil ke skala Rupiah
Y_forecast_rupiah <- inverse_boxcox(fc_Y[, 1], lambda_Y)
Y_lower_rupiah <- inverse_boxcox(fc_Y[, 2], lambda_Y)
Y_upper_rupiah <- inverse_boxcox(fc_Y[, 3], lambda_Y)
# Buat tabel hasil ramalan dalam Rupiah
forecast_rupiah <- data.frame(
Periode = 1:length(Y_forecast_rupiah),
Ramalan_PDRB = round(Y_forecast_rupiah, 2),
Batas_Bawah_95 = round(Y_lower_rupiah, 2),
Batas_Atas_95 = round(Y_upper_rupiah, 2)
)
# Tampilkan hasil di console
print("===== HASIL PERAMALAN PDRB (DALAM RUPIAH) =====")
## [1] "===== HASIL PERAMALAN PDRB (DALAM RUPIAH) ====="
print(forecast_rupiah)
## Periode Ramalan_PDRB Batas_Bawah_95 Batas_Atas_95
## 1 1 144869897 151307223 139091272
## 2 2 145427747 155608124 136797452
## 3 3 146126664 159097496 135562238
## 4 4 146692856 162117707 134546145
## 5 5 147359216 165034989 133844744
## 6 6 147948520 167707701 133234630
# ============================================================
# PLOT GABUNGAN DATA AKTUAL & HASIL PERAMALAN PDRB (DALAM RUPIAH)
# ============================================================
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.4.3
library(zoo)
library(scales)
## Warning: package 'scales' was built under R version 4.4.3
# --- (1) Siapkan Data Aktual PDRB dari Data Asli ---
# Data$Y adalah PDRB sebelum transformasi
PDRB_aktual <- Data$Y
periode_aktual <- as.yearqtr(seq(as.Date("2011-01-01"),
by = "3 months",
length.out = length(PDRB_aktual)))
data_aktual <- data.frame(
Periode = periode_aktual,
PDRB = PDRB_aktual,
Tipe = "Aktual"
)
# --- (2) Siapkan Data Hasil Ramalan PDRB ---
# Asumsikan data terakhir tahun 2024 Q4
periode_terakhir <- max(data_aktual$Periode)
forecast_rupiah$Periode <- periode_terakhir + seq_len(nrow(forecast_rupiah)) / 4
forecast_rupiah$Tipe <- "Ramalan"
forecast_rupiah$PDRB <- forecast_rupiah$Ramalan_PDRB
# --- (3) Gabungkan Data Aktual dan Ramalan ---
gabung_pdrb <- rbind(
data_aktual[, c("Periode", "PDRB", "Tipe")],
forecast_rupiah[, c("Periode", "PDRB", "Tipe")]
)
# --- (4) Plot Menggunakan ggplot2 ---
ggplot() +
# Interval Kepercayaan (Ribbon)
geom_ribbon(
data = forecast_rupiah,
aes(x = Periode, ymin = Batas_Bawah_95, ymax = Batas_Atas_95),
fill = "skyblue", alpha = 0.3
) +
# Garis Data Aktual
geom_line(
data = subset(gabung_pdrb, Tipe == "Aktual"),
aes(x = Periode, y = PDRB, color = "Data Aktual"),
size = 1.2
) +
# Garis Ramalan PDRB
geom_line(
data = subset(gabung_pdrb, Tipe == "Ramalan"),
aes(x = Periode, y = PDRB, color = "Ramalan PDRB"),
size = 1.2
) +
# Titik Ramalan PDRB
geom_point(
data = subset(gabung_pdrb, Tipe == "Ramalan"),
aes(x = Periode, y = PDRB),
color = "blue", size = 3
) +
# Garis Batas Bawah dan Atas
geom_line(
data = forecast_rupiah,
aes(x = Periode, y = Batas_Bawah_95, color = "Batas Bawah 95%"),
linetype = "dashed", size = 1
) +
geom_line(
data = forecast_rupiah,
aes(x = Periode, y = Batas_Atas_95, color = "Batas Atas 95%"),
linetype = "dashed", size = 1
) +
# --- (5) Label, Warna, dan Tema ---
labs(
title = "ANALISIS TREND EKONOMI REGIONAL",
subtitle = "Hasil Peramalan Produk Domestik Regional Bruto (PDRB) Kalimantan Timur \nMetode VAR, Periode 2025–2026 (Triwulanan)",
x = "Periode (Triwulan)",
y = "Nilai PDRB (Rupiah)",
color = "Keterangan"
) +
scale_y_continuous(labels = comma) +
scale_color_manual(values = c(
"Data Aktual" = "black",
"Ramalan PDRB" = "blue",
"Batas Bawah 95%" = "red",
"Batas Atas 95%" = "green"
)) +
theme_minimal(base_size = 14) +
theme(
plot.title = element_text(face = "bold", size = 18, hjust = 0.5),
plot.subtitle = element_text(size = 13, hjust = 0.5),
axis.title.x = element_text(face = "bold"),
axis.title.y = element_text(face = "bold"),
legend.position = "bottom",
legend.title = element_text(face = "bold"),
panel.grid.minor = element_blank(),
panel.grid.major.x = element_line(color = "gray85"),
panel.grid.major.y = element_line(color = "gray90")
)
## Warning: Using `size` aesthetic for lines was deprecated in ggplot2 3.4.0.
## ℹ Please use `linewidth` instead.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
## Warning: The `trans` argument of `continuous_scale()` is deprecated as of ggplot2 3.5.0.
## ℹ Please use the `transform` argument instead.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
