Does the autocorrelation function have any meaning with a non-stationary time series?

The time series is generally assumed to be stationary before autocorrelation is used for Box and Jenkins modeling purposes.

  • 1
    $\begingroup$ if your series is non stationnary, the ACF will decline very slowly, to the point of being useless (it essentially a constant). What do you mean by 'have any meaning' ? $\endgroup$
    – user603
    Sep 13, 2010 at 17:02
  • $\begingroup$ If the time series is not stationary, often the 1st difference of the series will be stationary (for example, financial time series). $\endgroup$ Dec 3, 2010 at 22:18

3 Answers 3


@whuber gave a nice answer. I would just add, that you can simulate this very easily in R:

op <- par(mfrow = c(2,2), mar = .5 + c(0,0,0,0))

N <- 500
# Simulate a Gaussian noise process
y1 <- rnorm(N)
# Turn it into integrated noise (a random walk)
y2 <- cumsum(y1)

plot(ts(y1), xlab="", ylab="", main="", axes=F); box()
plot(ts(y2), xlab="", ylab="", main="", axes=F); box()
acf(y1, xlab="", ylab="", main="", axes=F); box()
acf(y2, xlab="", ylab="", main="", axes=F); box()


Which ends up looking somewhat like this:

alt text

So you can easily see that the ACF function trails off slowly to zero in the case of a non-stationary series. The rate of decline is some measure of the trend, as @whuber mentioned, although this isn't the best tool to use for that kind of analysis.


In its alternative form as a variogram, the rate at which the function grows with large lags is roughly the square of the average trend. This can sometimes be a useful way to decide whether you have adequately removed any trends.

You can think of the variogram as the squared correlation multiplied by an appropriate variance and flipped upside down.

(This result is a direct consequence of the analysis presented at Why does including latitude and longitude in a GAM account for spatial autocorrelation?, which shows how the variogram includes information about the expected squared difference between values at different locations.)


One idea could be to make your time series stationary and then to perform ACF on it. One way to make a time series stationary is to compute the differences between consecutive observations. The ACF of the differenced signal should not suffer from the effects of trends or seasonality in the signal.


Your Answer

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

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