コレログラムとは
コレログラムとは、時系列データの中に、どのような周期があるかを表すグラフです。
厳密には、元データから時間をずらした量(ラグ)と自己相関を表したグラフになります。
コレログラムでは、横軸にラグをとり、縦軸に自己相関を取ります。
コレログラムを用いることで、データの周期性を読み取ることが出来ます。
*ラグとは、元データxからどれほど時間をずらしているかの量や指標
*自己相関(ACF: Autocorrelation Function)とは、「元のデータ」と「元のデータから時間をずらしたデータ」の相関係数を表す値
Pythonでコレログラムを描画するには
Pythonでコレログラムを描画する方法としていくつか方法がありますが、この記事ではStatsmodelsのplot_acfを用いて描画してみます。
#https://www.statsmodels.org/stable/generated/statsmodels.graphics.tsaplots.plot_acf.html
import pandas as pd
import matplotlib.pyplot as plt
import statsmodels.api as sm
data = sm.datasets.sunspots.load_pandas().data
data.index = pd.Index(sm.tsa.datetools.dates_from_range('1700', '2008'))
del data["YEAR"]
sm.graphics.tsa.plot_acf(data.values.squeeze(), lags=40)
plt.show()
出力結果
Pythonや統計を効率よく学ぶには?
Pythonや統計を効率よく学ぶには、普段からPythonや統計学を用いて業務をしている現役のデータサイエンティストに質問できる環境で学ぶことです。
質問し放題かつ、体系的に学べる動画コンテンツでデータ分析技術を学びたい方は、オンラインで好きな時間に勉強できるAI Academy Bootcampがオススメです。受講料も業界最安値の35,000円(6ヶ月間質問し放題+オリジナルの動画コンテンツ、テキストコンテンツの利用可能)なので、是非ご活用ください。