Pythonで時系列を操作し、sm.tsa.seasonal_decompose
を使用しています。 docs では、次のような関数が導入されています。
Rの
decompose
と同じように素朴な季節分解ツールを追加しました。
ドキュメントとその出力からのコードのコピーは次のとおりです。
import statsmodels.api as sm
dta = sm.datasets.co2.load_pandas().data
# deal with missing values. see issue
dta.co2.interpolate(inplace=True)
res = sm.tsa.seasonal_decompose(dta.co2)
res.plot()
彼らはそれがナイーブであると言いますが、それの何が悪いのかについての免責事項はありません。誰か知っている?
私はいくつかの(aehm ...ナイーブな)調査を行いました、そして、 参照によると 、StatsModelsは古典的な移動平均法を使用して傾向を検出し、季節分解を適用しているようです(もっとチェックできます- ここ 、具体的には 移動平均 および 古典的分解 )について。
ただし、 STL分解 などの他の高度な季節分解手法も利用できます。これには Python実装 もあります。 (UPDATE-11/04/2019@ squarespiralのコメントで指摘されているように、このような実装はStatsModelsのマスターブランチにマージされているようです) 。
上記のリンクで、提案された方法のそれぞれの長所と短所に関する完全なリファレンスを見つけることができます。
それが役に立てば幸い!