Matthieu Stigler
2008-Nov-14 11:50 UTC
[R] arima.sim and first innovation: why nevertheless assume 0?
Hello I want to create a ARIMA(0,1,1) model giving my own innovations. I don't understand why even if I feed the arima.sim() function with innov and start.innov it takes a value of 0 for the first value. After that, I don't understand anymore how the series is constructed. set.seed(1) e<-rnorm(201) #I give 200 observations to take as innovations and 1 for the burn-in sample (ARIMA(0,1,1) needs one pre-sample observation to run): arima.sim(model=list(order=c(0,1,1), ma=0.5), n=200, innov=e[-1],start.innov=e[1], n.start=1) #the first value is zero! mentionned in manual, but why is it also the case for user-given innovations? #Furthermore, remark that it creates 201 observations and not 200 as given as argument. Actualy, the function gives always n+1 when innov is given by user #The value should be: y(t)= y(t-1) +e(t) + 0.5*e(t-1) e[1]+e[2]+0.5*e[1] #ok, assume the first one is zero, now compute the second one: 0+e[3]+e[2]*0.5 #and this is not what the arima.sim gives... Is my reasonning correct? How to explain that the first value is zero? Hos is the series constructed? And why does it returns n+1 values? Thank you for your help! Matthieu Stigler