Tim*_*ash 5 simulation r time-series data-science arima
我正在尝试使用 ARIMA sim 包来模拟具有漂移的 ARIMA 模拟。我的问题是我似乎无法让它工作。
我需要得到这样的东西:
我的代码正在产生这个:
> mean(datatime)
[1] 15881.56
> sd(datatime)
[1] 8726.893
> length(datatime)
[1] 123
Run Code Online (Sandbox Code Playgroud)
# The mean and variance from the original series
originalseriesmean = 15881.56
originalseriesvariance = 8726.893*8726.893
originalseriesn=123
# Simulation using arima.sim
ts.sim <- arima.sim(model=list(c(1,1,1)), n = 123, mean=190,sd=69.2863)
ts.plot(ts.sim)
Run Code Online (Sandbox Code Playgroud)
根据定义,ARIMA 过程没有任何漂移/趋势。受到交叉验证arima 与趋势的这个答案的启发,并考虑到您想要的值:
set.seed(123)
intercept <- 4500
b <- (32000 - intercept) / 123
x <- 1:123
y <- b * x + arima.sim(model=list(c(1, 0, 1)),
n = 123, mean=intercept, sd=2000)
> sd(y)
[1] 8020
> mean(y)
[1] 18370
Run Code Online (Sandbox Code Playgroud)
该参数mean
为您提供过程的截距(从哪里开始),为了获得方差,您应该对过程进行去趋势处理,因为您给出的mean
值和sd
值具有趋势,而要模拟这样的过程,您应该将过程分解为噪声+趋势。