Искам да се симулира от ARMA (1,2) серия. Трябва да се инициализира $ X_0 $ = 9. Как да го направя в R? Не мога да намеря никаква разпоредба за инициализация в arima.sim
Отговори:
3 за отговор № 1Може да го използвате, използвайки правилната комбинация от аргументите start.innov
, n.start
и innov
които се предават stats:arima.sim
.
За AR процес с параметър phi
, лесно е да се види, че следното дава първа симулирана стойност, равна на $ X_0 = 9 $.
n <- 50
phi <- 0.5
x0 <- 9
set.seed(123)
arima.sim(n, model=list(ar=phi), start.innov=x0/phi, n.start=1,
innov=c(0,rnorm(n-1)))
# [1] 9.00000000 3.93952435 1.73958469 2.42850066 1.28475872 0.77166710
# [7] 2.10089853 1.51136547 -0.50937850 -0.94154210 -0.91643302 0.76586529
# [13] 0.74274647 0.77214469 0.49675506 -0.30746361 1.63318133 1.31444115
# ...
За ARMA (1,2) трябва да направите математика, например намерих следната комбинация за параметрите, използвани по-долу:
set.seed(123)
arima.sim(n=50, model=list(ar=0.5, ma=c(0.4, 0.2)), start.innov=c(0,0,10),
n.start=3, innov=c(rep(0,3),rnorm(47)))
# [1] 9.00000000 6.50000000 3.25000000 1.06452435 0.07789443 1.39348940
# [7] 1.34470092 1.14158321 2.35167337 2.34863643 0.43663646 -0.88237587
# [13] -1.41460329 0.20114479 0.86088655 1.21995661 0.95293237 0.04505243
# ...