9.7 Exercises

  1. Consider monthly sales and advertising data for an automotive parts company (data set advert).
    1. Fit a standard regression model \(y_t = a + b x_t + n_t\) where \(y_t\) denotes sales and \(x_t\) denotes advertising using the tslm() function.
    2. Show that the residuals have significant autocorrelation.
    3. What difference does it make you use the function instead:

      Arima(advert[,'sales'], xreg=advert[,'advert'], order=c(0,0,0))
    4. Refit the model using auto.arima(). How much difference does the error model make to the estimated parameters? What ARIMA model for the errors is selected?
    5. Check the residuals of the fitted model.
    6. Assuming the advertising budget for the next six months is exactly 80 units per month, produce sales forecasts with prediction intervals for the next six months.

  2. This exercise uses data set huron giving the level of Lake Huron from 1875–1972.
    1. Fit a piecewise linear trend model to the Lake Huron data with a knot at 1920 and an ARMA error structure.
    2. Forecast the level for the next 30 years.
  3. This exercise concerns motel: the total monthly takings from accommodation and the total room nights occupied at hotels, motels, and guest houses in Victoria, Australia, between January 1980 and June 1995. Total monthly takings are in thousands of Australian dollars; total room nights occupied are in thousands.
    1. Use the data to calculate the average cost of a night’s accommodation in Victoria each month.
    2. Estimate the monthly CPI.
    3. Produce time series plots of both variables and explain why logarithms of both variables need to be taken before fitting any models.
    4. Fit an appropriate regression model with ARIMA errors. Explain your reasoning in arriving at the final model.
    5. Forecast the average price per room for the next twelve months using your fitted model. (Hint: You will need to produce forecasts of the CPI figures first.)
  4. We fitted a harmonic regression model to part of the gasoline series in Exercise 6 in Section 5.10. We will now revisit this model, and extend it to include more data and ARMA errors.
    1. Using tslm, fit a harmonic regression with a piecewise linear time trend to the full gasoline series. Select the position of the knots in the trend and the appropriate number of Fourier terms to include by minimizing the AICc or CV value.
    2. Now refit the model using auto.arima to allow for correlated errors, keeping the same predictor variables as you used with tslm.
    3. Check the residuals of the final model using the checkresiduals() function. Do they look sufficiently like white noise to continue? If not, try modifying your model, or removing the first few years of data.
    4. Once you have a model with white noise residuals, produce forecasts for the next year.
  5. Electricity consumption is often modelled as a function of temperature. Temperature is measured by daily heating degrees and cooling degrees. Heating degrees is \(18^\circ\)C minus the average daily temperature when the daily average is below \(18^\circ\)C; otherwise it is zero. This provides a measure of our need to heat ourselves as temperature falls. Cooling degrees measures our need to cool ourselves as the temperature rises. It is defined as the average daily temperature minus \(18^\circ\)C when the daily average is above \(18^\circ\)C; otherwise it is zero. Let \(y_t\) denote the monthly total of kilowatt-hours of electricity used, let \(x_{1,t}\) denote the monthly total of heating degrees, and let \(x_{2,t}\) denote the monthly total of cooling degrees.

    An analyst fits the following model to a set of such data: \[y^*_t = b_1x^*_{1,t} + b_2x^*_{2,t} + n_t,\] where \[(1-B)(1-B^{12})n_t = \frac{1-\theta_1 B}{1-\phi_{12}B^{12} - \phi_{24}B^{24}}e_t\] and \(y^*_t = \log(Y_t)\), \(x^*_{1,t} = \sqrt{x_{1,t}}\) and \(x^*_{2,t}=\sqrt{x_{2,t}}\).

    1. What sort of ARIMA model is identified for \(N_t\)?
    2. The estimated coefficients are
    Year 1964 1965 1966 1967 1968
    Millions of tons 467 512 534 552 545
    Parameter Estimate s.e. \(Z\) \(P\)-value
    \(b_1\) 0.0077 0.0015 4.98 0.000
    \(b_2\) 0.0208 0.0023 9.23 0.000
    \(\theta_1\) 0.5830 0.0720 8.10 0.000
    \(\phi_{12}\) -0.5373 0.0856 -6.27 0.000
    \(\phi_{24}\) -0.4667 0.0862 -5.41 0.000

    Explain what the estimates of \(b_1\) and \(b_2\) tell us about electricity consumption.

    1. Write the equation in a form more suitable for forecasting.
    2. Describe how this model could be used to forecast electricity demand for the next 12 months.
    3. Explain why the \(N_t\) term should be modelled with an ARIMA model rather than modeling the data using a standard regression package. In your discussion, comment on the properties of the estimates, the validity of the standard regression results, and the importance of the \(N_t\) model in producing forecasts.
  6. For the retail time series considered in earlier chapters:
    1. Develop an appropriate dynamic regression model with Fourier terms for the seasonality. Use the AIC to select the number of Fourier terms to include in the model. (You will probably need to use the same Box-Cox transformation you identified previously.)
    2. Check the residuals of the fitted model. Does the residual series look like white noise?
    3. Compare the forecasts with those you obtained earlier using alternative models.