python statsmaodelの使用

1952 ワード

1、Pands
Python Data Analysis LibraryまたはpandsはNumPyに基づくツールであり、これはPython公式自身のライブラリに相当します。
statsmaodelはPandsに基づいて開発されたライブラリで、統計、統計モデルの推定、推論、予測を記述するために使用されます。
2、自己回帰モデル(AutoRegression model,AR)
自己回帰は、物理的な観点から、現在の記録とその歴史記録との差を理解する。eg、自己回帰は歴史の発展が一定の直線であると考えています。
3、スライド平均モデル(moving average model,MA)
移動平均は、物理的な観点から理解すると、現在の記録は履歴の平均値である。eg,移動平均モデルは歴史の発展が水平線であると考えている。
4、高級タイムシーケンスモデルARMA
ARMAとは、ARとMAを結合したアルゴリズムであり、ARとMAが混合されると、y=ax+bのプロセスと考えられ、自己回帰からaという係数を提供し、移動平均はbというスクリーンを提供する。
5、高級タイムシーケンスモデルARIMA【atoregression intergrated moving average差分自己回帰移動平均】
ARIMAではIの指代の差分は、前後の時間の数値の違いであり、ARIMAは差分データを用いてARMAのモデリングを行うものである。
6、ARMAテスト

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import statsmodels.api as sm
from statsmodels.graphics.tsaplots import acf, pacf, plot_acf, plot_pacf
from statsmodels.tsa.arima_model import ARMA
from statsmodels.tsa.stattools import arma_order_select_ic

if __name__ == "__main__":

  time_series = pd.Series(
    [151.0, 188.46, 199.38, 219.75, 241.55, 262.58, 328.22, 396.26, 442.04, 517.77, 626.52, 717.08, 824.38, 913.38,
     1088.39, 1325.83, 1700.92, 2109.38, 2499.77, 2856.47, 3114.02, 3229.29, 3545.39, 3880.53, 4212.82, 4757.45,
     5633.24, 6590.19, 7617.47, 9333.4, 11328.92, 12961.1, 15967.61])
  # print('BIC        ', arma_order_select_ic(time_series, max_ar=10, max_ma=6, ic='bic')['bic_min_order'])
  print('time_series:', len(time_series))
  my_arma = ARMA(time_series, (1, 0)) #    (1, 0) arma_order_select_ic    ,      6,7    
  model = my_arma.fit()
  result = model.forecast(10)[0]
  print('result:', result)

以上はpython statsmoodelの使用の詳細です。python statsmaodelに関する資料は他の関連記事に注目してください。