始める無料で始める

時系列分解

時系列データを可視化するときは、次のような特徴的なパターンに注目します。

  • seasonality(季節性): データに明確な周期的パターンはありますか?
  • trend(トレンド): データは一貫して上昇または下降する傾向にありますか?
  • noise(ノイズ): 外れ値や、他のデータと整合しない欠損値はありますか?

時系列分解と呼ばれる手法を使うと、時系列データの構造を自動で抽出・定量化できます。statsmodels ライブラリには、時系列分解をそのまま実行できる seasonal_decompose() 関数が用意されています。

decomposition = sm.tsa.seasonal_decompose(time_series)

分解オブジェクトの seasonal 属性にアクセスすると、たとえば季節性コンポーネントのように、特定の成分を取り出せます。

この演習はコースの一部です

Pythonで学ぶ時系列データの可視化

コースを見る

演習の手順

  • statsmodels.api をエイリアス sm でインポートします。
  • co2_levels データフレームに対して時系列分解を実行し、変数 decomposition に代入します。
  • 時系列分解の季節性コンポーネントを出力します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Import statsmodels.api as sm
import ____ as ____

# Perform time series decompositon
decomposition = sm.tsa.____(____)

# Print the seasonality component
print(____)
コードを編集して実行