I am working on a data set. After using some model identification techniques, I came out with an ARIMA(0,2,1) model.

I used the detectIO function in the package TSA in R to detect an innovative outlier (IO) at the 48th observation of my original data set.

How do I incorporate this outlier into my model so I can use it for forecasting purposes? I don't want to use the ARIMAX model since I might not be able to make any predictions from that in R. Are there any other ways I could do this?

Here are my values in order:

VALUE <- scan()
  4.6  4.5  4.4  4.5  4.4  4.6  4.7  4.6  4.7  4.7  4.7  5.0  5.0  4.9  5.1  5.0  5.4
  5.6  5.8  6.1  6.1  6.5  6.8  7.3  7.8  8.3  8.7  9.0  9.4  9.5  9.5  9.6  9.8 10.0
  9.9  9.9  9.8  9.8  9.9  9.9  9.6  9.4  9.5  9.5  9.5  9.5  9.8  9.3  9.1  9.0  8.9
  9.0  9.0  9.1  9.0  9.0  9.0  8.9  8.6  8.5  8.3  8.3  8.2  8.1  8.2  8.2  8.2  8.1
  7.8  7.9  7.8  7.8

That is actually my data. They are unemployment rates over a period of 6 years. There are 72 observations then . Each value is to at most one decimal place

  • 6
    $\begingroup$ You can create a dummy that's 1 for $t=48$ and 0 at all other periods. Then re-estimate the model. That will keep this outlier from skewing up the forecast. If that's not what you have in mind, you should elaborate on the second paragraph. $\endgroup$
    – dimitriy
    Jun 21, 2013 at 1:36
  • 2
    $\begingroup$ @Gen_b You are correct , it should disturb you as this is probably over differenced yielding a cancelling MA(1). Misidentification results from using inappropriate tools. $\endgroup$
    – IrishStat
    Jun 25, 2013 at 10:35
  • 2
    $\begingroup$ In the second differences, you have what looks like an outlier, but it's apparently caused by a small additive jump at observation 47 in the original series, which when differenced twice looks like a large negative outlier one period later. If you do something simple to remove that small effect at observation 47 (almost anything sensible), no outliers appear in the second difference. I'd say it's perhaps better looked at as an AO on the original scale. $\endgroup$
    – Glen_b
    Jun 26, 2013 at 2:58
  • 2
    $\begingroup$ There's a lot going on in this dataset, but the local temporal behavior (correlation, seasonality, etc) is the least of it. When you blindly analyze data like this as just a sequence of numbers, you are at risk of producing ridiculous results (or worse). What can you tell us about what these data mean? Are they perhaps measurements of something at a monitoring station? An economic time series? A chart of biological growth? Understanding something about the underlying phenomenon will usually do far more to help identify a model than any amount of fiddling with statistical software can. $\endgroup$
    – whuber
    Jun 26, 2013 at 13:03
  • 2
    $\begingroup$ @whuber: they are unemployment rates over a period of 6 years! $\endgroup$
    – b2amen
    Jun 26, 2013 at 13:07

1 Answer 1



$$Y(t) = [\theta/\phi][A(t)+\text{IO}(t)]$$


$$Y^\text{*}(t) = [\theta/\phi][A(t)] + [\theta/\phi][\text{IO}(t)].$$


$$\theta = 1\ \ \text{and}\ \ \phi = [1-.5B]$$

for example ... then

$$Y^\text{*}(t) = [1/(1-.5B)][A(t)] \\ \quad\quad\quad\quad+ \text{IO}(t) - .5\cdot \text{IO}(t-1) + .25\cdot \text{IO}(t-2) - .125\cdot \text{IO}(t-3)-\cdots\,.$$

If for example the estimate of the IO effect is $10.0$, then

$$Y^{*}(t) = [1/(1-.5B)][A(t)] \\ \quad\quad\quad\quad+ 10\cdot \text{IO}(t) - 5\cdot \text{IO}(t-1) + 2.5\cdot \text{IO}(t-2) - 1.25\cdot \text{IO}(t-3)-\cdots\,.$$
where the indicator variable for $\text{IO}$ is 0 or 1.

In this way you can see that the impact of the anomaly not only is instantaneous but has memory.

Software like AUTOBOX (which I am familiar with) does not identify IO effects (but rather AO effects) would identify a sequence of anomalies with values 10, -5, 2.5, -1.25,... starting at period $t$ .

The user upon seeing this rare event could restate the transfer between the AO intervention with a dynamic structure $[w(b)/d(b)]$ rather than a pure numerator structure $[w(b)]$ yielding the same result as if an IO effect was incorporated.

Anytime you incorporate memory, be it a result of a differencing operator or ARMA structure, it is a tacit admission of ignorance due to omitted causal series. This is also true of the need to incorporate Intervention deterministic series such as Pulses/Level Shifts, Seasonal Pulses or Local Time Trends. These dummy variables are a neede proxy for omitted determinstic user-specified causal variables. Oftentime all you have is the series of interest and given the qualifiers that I have spelled out, you can forecast the future based upon the past in total ignorance of exactly the nature of the data being analyzed. The only problem is you are using the rear-window to predict the road ahead ....a dangerous thing indeed. To stand up and declare the forecasts is based solely on the past of the series and some proxy ARIMA stuff and some proxy deterministic stuff is quite silly BUT in the absence of the knowledge of the true causals , it can be useful, As G.E.P.BOX said "all model are wrong, but some are useful"

after the data was posted ...

A reasonable model is a (1,1,0) is enter image description here and the AO anomalies were identified at periods 39,41,47,21 and 69 (not period 48) . The residuals from this model appear to be free of evident structure. enter image description here AND enter image description here The fice AO values an optimal representation of the activity reflected by activity not in the history of the time series. I would think that the ACF of the OP's over-differenced model would reflect model inadequacy. Here is the model. enter image description here Again there is no R code delivered as the problem or opportunity is in the realm of model identification/revision/validation. Finally, a plot of the actual/fitted and forecasted series.

  • 1
    $\begingroup$ thanks for your reply; but i actually wanted an R-Code instead for my model. $\endgroup$
    – b2amen
    Jun 25, 2013 at 18:23
  • 1
    $\begingroup$ @b2amen Yes I undersatnd BUT Glen_b wanted some "stuff" and I thought I would respond to him. $\endgroup$
    – IrishStat
    Jun 25, 2013 at 19:01
  • $\begingroup$ Thanks for the editing. You and I would make good partners ! $\endgroup$
    – IrishStat
    Jun 26, 2013 at 0:31
  • $\begingroup$ @ IrishStat: my data is included in the original question. Hope that could assist you in assisting me. Thanks anyways $\endgroup$
    – b2amen
    Jun 26, 2013 at 2:33
  • $\begingroup$ @IrishStat: I like your output. It looks pretty neat to me. And what software did you use? But could you explain how you identified an AR(2,1,0)? Thanks $\endgroup$
    – b2amen
    Jun 26, 2013 at 13:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.