ARモデルは自己回帰モデルとも呼ばれるものです。
自己回帰という名の通り、時点 t におけるモデルの出力は時点 t 以前の自分自身の出力に依存する確率過程のことを指しています。
import statsmodels.api as sm
import numpy as np
import matplotlib.pyplot as plt
import japanize_matplotlib
AR過程のデータを作成する
データを生成するための関数を用意します
defcreate_ARdata(phis=[0.1], N=500, init=1, c=1, sigma=0.3):
"""AR過程のデータを作成する""" print(f"==AR({len(phis)})過程の長さ{N}のデータを作成==")
data = np.zeros(N)
data[0] = init + np.random.normal(0, sigma)
for t in range(2, N):
res = c + np.random.normal(0, sigma)
for j, phi_j in enumerate(phis):
res += phi_j * data[t - j -1]
data[t] = res
return data