Loved by learners at thousands of companies
Forecasting involves making predictions about the future. It is required in many situations: deciding whether to build another power generation plant in the next ten years requires forecasts of future demand; scheduling staff in a call centre next week requires forecasts of call volumes; stocking an inventory requires forecasts of stock requirements. Forecasts can be required several years in advance (for the case of capital investments), or only a few minutes beforehand (for telecommunication routing). Whatever the circumstances or time horizons involved, forecasting is an important aid to effective and efficient planning. This course provides an introduction to time series forecasting using R.
Exploring and visualizing time series in RFree
The first thing to do in any data analysis task is to plot the data. Graphs enable many features of the data to be visualized, including patterns, unusual observations, and changes over time. The features that are seen in plots of the data must then be incorporated, as far as possible, into the forecasting methods to be used.Welcome to Forecasting Using R50 xpCreating time series objects in R100 xpTime series plots100 xpSeasonal plots100 xpTrends, seasonality, and cyclicity50 xpAutocorrelation of non-seasonal time series100 xpAutocorrelation of seasonal and cyclic time series100 xpMatch the ACF to the time series50 xpWhite noise50 xpStock prices and white noise100 xp
Benchmark methods and forecast accuracy
In this chapter, you will learn general tools that are useful for many different forecasting situations. It will describe some methods for benchmark forecasting, methods for checking whether a forecasting method has adequately utilized the available information, and methods for measuring forecast accuracy. Each of the tools discussed in this chapter will be used repeatedly in subsequent chapters as you develop and explore a range of forecasting methods.Forecasts and potential futures50 xpNaive forecasting methods100 xpFitted values and residuals50 xpChecking time series residuals100 xpTraining and test sets50 xpEvaluating forecast accuracy of non-seasonal methods100 xpEvaluating forecast accuracy of seasonal methods100 xpDo I have a good forecasting model?50 xpTime series cross-validation50 xpUsing tsCV() for time series cross-validation100 xp
Forecasts produced using exponential smoothing methods are weighted averages of past observations, with the weights decaying exponentially as the observations get older. In other words, the more recent the observation, the higher the associated weight. This framework generates reliable forecasts quickly and for a wide range of time series, which is a great advantage and of major importance to applications in business.Exponentially weighted forecasts50 xpSimple exponential smoothing100 xpSES vs naive100 xpExponential smoothing methods with trend50 xpHolt's trend methods100 xpExponential smoothing methods with trend and seasonality50 xpHolt-Winters with monthly data100 xpHolt-Winters method with daily data100 xpState space models for exponential smoothing50 xpAutomatic forecasting with exponential smoothing100 xpETS vs seasonal naive100 xpMatch the models to the time series50 xpWhen does ETS fail?100 xp
Forecasting with ARIMA models
ARIMA models provide another approach to time series forecasting. Exponential smoothing and ARIMA models are the two most widely-used approaches to time series forecasting, and provide complementary approaches to the problem. While exponential smoothing models are based on a description of the trend and seasonality in the data, ARIMA models aim to describe the autocorrelations in the data.Transformations for variance stabilization50 xpBox-Cox transformations for time series100 xpNon-seasonal differencing for stationarity100 xpSeasonal differencing for stationarity100 xpARIMA models50 xpAutomatic ARIMA models for non-seasonal time series100 xpForecasting with ARIMA models100 xpComparing auto.arima() and ets() on non-seasonal data100 xpSeasonal ARIMA models50 xpAutomatic ARIMA models for seasonal time series100 xpExploring auto.arima() options100 xpComparing auto.arima() and ets() on seasonal data100 xp
The time series models in the previous chapters work well for many time series, but they are often not good for weekly or hourly data, and they do not allow for the inclusion of other information such as the effects of holidays, competitor activity, changes in the law, etc. In this chapter, you will look at some methods that handle more complicated seasonality, and you consider how to extend ARIMA models in order to allow other information to be included in the them.Dynamic regression50 xpForecasting sales allowing for advertising expenditure100 xpForecasting electricity demand100 xpDynamic harmonic regression50 xpForecasting weekly data100 xpHarmonic regression for multiple seasonality100 xpForecasting call bookings100 xpTBATS models50 xpTBATS models for electricity demand100 xpYour future in forecasting!50 xp
DatasetsExcelfile in the first exercise
PrerequisitesTime Series Analysis in R
Rob J. Hyndman
Professor of Statistics at Monash University
Rob J. Hyndman is Professor of Statistics at Monash University, Australia, and Editor-in-Chief of the International Journal of Forecasting. Rob is the author of over 150 research papers and books in statistical science. In 2007, he received the Moran medal from the Australian Academy of Science for his contributions to statistical research, especially in the area of statistical forecasting. He is the author of about 20 R packages, including the popular forecast package.