#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.