Skip to content

Instantly share code, notes, and snippets.

@erykml
Created March 28, 2022 20:15
Show Gist options
  • Select an option

  • Save erykml/b7ad4fe6505e0d3fcfe18ce95443c2d7 to your computer and use it in GitHub Desktop.

Select an option

Save erykml/b7ad4fe6505e0d3fcfe18ce95443c2d7 to your computer and use it in GitHub Desktop.
from statsmodels.tsa.seasonal import DecomposeResult
manual_decomposition = DecomposeResult(
seasonal=seasonal_df["seasonality"],
trend=seasonal_df["trend"],
resid=seasonal_df["resid"],
observed=seasonal_df["n_passengers"],
)
def add_second_decomp_plot(fig, res, legend):
axs = fig.get_axes()
comps = ["trend", "seasonal", "resid"]
for ax, comp in zip(axs[1:], comps):
series = getattr(res, comp)
if comp == "resid":
ax.plot(series, marker="o", linestyle="none")
else:
ax.plot(series)
if comp == "trend":
ax.legend(legend, frameon=False)
fig = seasonal_decomp.plot()
add_second_decomp_plot(fig, manual_decomposition, ["statsmodels", "manual"]);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment