Book Image

Forecasting Time Series Data with Prophet - Second Edition

By : Greg Rafferty
5 (1)
Book Image

Forecasting Time Series Data with Prophet - Second Edition

5 (1)
By: Greg Rafferty

Overview of this book

Forecasting Time Series Data with Prophet will help you to implement Prophet's cutting-edge forecasting techniques to model future data with high accuracy using only a few lines of code. This second edition has been fully revised with every update to the Prophet package since the first edition was published two years ago. An entirely new chapter is also included, diving into the mathematical equations behind Prophet's models. Additionally, the book contains new sections on forecasting during shocks such as COVID, creating custom trend modes from scratch, and a discussion of recent developments in the open-source forecasting community. You'll cover advanced features such as visualizing forecasts, adding holidays and trend changepoints, and handling outliers. You'll use the Fourier series to model seasonality, learn how to choose between an additive and multiplicative model, and understand when to modify each model parameter. Later, you'll see how to optimize more complicated models with hyperparameter tuning and by adding additional regressors to the model. Finally, you'll learn how to run diagnostics to evaluate the performance of your models in production. By the end of this book, you'll be able to take a raw time series dataset and build advanced and accurate forecasting models with concise, understandable, and repeatable code.
Table of Contents (20 chapters)
1
Part 1: Getting Started with Prophet
5
Part 2: Seasonality, Tuning, and Advanced Features
14
Part 3: Diagnostics and Evaluation

Adding default state/province holidays

Adding the holidays specific to Illinois is not so straightforward, because the add_country_holidays method only takes an argument for the country, but not the state or province. To add state- or province-level holidays, we need to use a new Prophet function, make_holidays_df. Let’s import it here:

from prophet.make_holidays import make_holidays_df

This function takes a list of years for which to populate the holidays as input, as well as arguments for the country and state or province. Note that you must use all years in your training DataFrame, as well as all the years for which you intend to predict. That is why, in the following code, we build a year list to contain all unique years in the training DataFrame. Then, because our make_future_dataframe command will add one year to the forecast, we need to extend that year list to include one additional year:

year_list = df['ds'].dt.year.unique().tolist()
# Identify the...