Q1) How to interpret the Seasonal Decompose (Additive V/S Multiplicative) plotted against the same dataset?
Q2) And, on the basis of the below plotted Observed data-points, which decomposition one makes more sense, and why?
Observations from Multiplicative Decomposition:
- Seasonal & Trend chart scales between 0.99 to 1.00
Observations from Additive Decomposition:
- Seasonal chart scales between -3 to 3
- Trend chart scales between -2 to 2
Code Used:
import statsmodels.datasets.co2 as co2
co2_df = co2.load().data
co2_data = co2_data.fillna(co2_data.interpolate()); co2_data.columns=["co2_interpolated"]
y = co2_data["co2_interpolated"]
decomposition_mul = sm.tsa.seasonal_decompose(y, model='multiplicative')
decomposition_add = sm.tsa.seasonal_decompose(y, model='additive')
Plot:
def plotseasonal(res, axes, title):
axes[0].title.set_text(title)
res.observed.plot(ax=axes[0], legend=False)
axes[0].set_ylabel('Observed')
res.trend.plot(ax=axes[1], legend=False)
axes[1].set_ylabel('Trend')
res.seasonal.plot(ax=axes[2], legend=False)
axes[2].set_ylabel('Seasonal')
res.resid.plot(ax=axes[3], legend=False)
axes[3].set_ylabel('Residual')
fig, axes = plt.subplots(ncols=2, nrows=4, sharex=False, figsize=(30,15))
plotseasonal(decomposition_mul, axes[:,0], title="Multiplicative")
plotseasonal(decomposition_add, axes[:,1], title="Additive")
```