Úvod do časových řad a stacionarity

ARIMA modely v Pythonu

James Fulton

Climate informatics researcher

Motivace

Časové řady jsou všude

  • Věda
  • Technologie
  • Obchod
  • Finance
  • Politika
ARIMA modely v Pythonu

Obsah kurzu

Naučíte se

  • Strukturu modelů ARIMA
  • Jak přizpůsobit model ARIMA
  • Jak optimalizovat model
  • Jak vytvářet předpovědi
  • Jak vypočítat nejistotu předpovědí
ARIMA modely v Pythonu

Načítání a vykreslování

import pandas as pd
import matplotlib as plt

df = pd.read_csv('time_series.csv', index_col='date', parse_dates=True)
date            values
2019-03-11    5.734193    
2019-03-12    6.288708    
2019-03-13    5.205788    
2019-03-14    3.176578
ARIMA modely v Pythonu

Trend

fig, ax = plt.subplots()
df.plot(ax=ax)
plt.show()

ARIMA modely v Pythonu

Sezónnost

ARIMA modely v Pythonu

Cyklicita

ARIMA modely v Pythonu

Bílý šum

Bílý šum obsahuje nekorelované hodnoty

  • Hlava, hlava, hlava, orel, hlava, orel, ...
  • 0.1, -0.3, 0.8, 0.4, -0.5, 0.9, ...
ARIMA modely v Pythonu

Stacionarita

Stacionární

  • Trendová stacionarita: trend je nulový

Nestacionární

ARIMA modely v Pythonu

Stacionarita

Stacionární

  • Trendová stacionarita: trend je nulový
  • Rozptyl je konstantní

Nestacionární

ARIMA modely v Pythonu

Stacionarita

Stacionární

  • Trendová stacionarita: trend je nulový
  • Rozptyl je konstantní
  • Autokorelace je konstantní

Nestacionární

ARIMA modely v Pythonu

Rozdělení na trénovací a testovací sadu

# Train data - all data up to the end of 2018
df_train = df.loc[:'2018']

# Test data - all data from 2019 onwards
df_test = df.loc['2019':]
ARIMA modely v Pythonu

Pojďme cvičit!

ARIMA modely v Pythonu

Preparing Video For Download...