This text is a follow-up to a earlier submit. There, we recognized 3 kinds of seasonal patterns.
Right here, we’ll:
- Discover ways to describe the seasonality of a time sequence.
- Go over 8 approaches you should utilize to mannequin seasonality.
Seasonality refers to repeatable patterns that recur over some interval. It is a vital supply of variation that’s essential to mannequin.
There are a number of methods of dealing with seasonality. Some approaches take away the seasonal part earlier than modeling. Seasonally-adjusted knowledge (a time sequence minus the seasonal part) highlights long-term results resembling tendencies or enterprise cycles. Different approaches add additional variables that seize the cyclical nature of seasonality.
Earlier than going over totally different strategies, let’s create a time sequence and describe its seasonal patterns.
We’ll use the identical course of we did within the earlier article (see additionally reference ):
interval = 12 # month-to-month sequence
measurement = 120
beta1 = np.linspace(-.6, .3, num=measurement)
beta2 = np.linspace(.6, -.3, num=measurement)
sin1 = np.asarray([np.sin(2 * np.pi * i / 12) for i in np.arange(1, size + 1)])
cos1 = np.asarray([np.cos(2 * np.pi * i / 12) for i in np.arange(1, size + 1)])
xt = np.cumsum(np.random.regular(scale=0.1, measurement=measurement))
yt = xt + beta1 * sin1 + beta2 * cos1 + np.random.regular(scale=0.1, measurement=measurement)
yt = pd.Sequence(yt)
Right here’s what this sequence appear like:
We are able to begin by describing the seasonal sample by its power:
from src.seasonality import seasonal_strength