0
0
ML Pythonml~5 mins

ARIMA model basics in ML Python

Choose your learning style9 modes available
Introduction

ARIMA helps us predict future points in a series of data by looking at past values and trends. It is useful when data changes over time.

You want to forecast sales for the next months based on past sales data.
You need to predict daily temperatures using historical weather data.
You want to estimate future stock prices from past price movements.
You want to analyze and forecast website traffic trends over time.
Syntax
ML Python
from statsmodels.tsa.arima.model import ARIMA

model = ARIMA(data, order=(p, d, q))
model_fit = model.fit()
predictions = model_fit.predict(start=start, end=end)

p is how many past values to look at (lags).

d is how many times to make the data steady by differencing.

q is how many past errors to include.

Examples
This uses 1 lag, no differencing, and no error terms.
ML Python
model = ARIMA(data, order=(1, 0, 0))
model_fit = model.fit()
This uses 2 lags, 1 differencing to make data steady, and 1 error term.
ML Python
model = ARIMA(data, order=(2, 1, 1))
model_fit = model.fit()
Sample Model

This code creates a random walk time series, fits an ARIMA(1,1,1) model, and predicts the next 5 points.

ML Python
import numpy as np
import pandas as pd
from statsmodels.tsa.arima.model import ARIMA

# Create simple time series data
np.random.seed(0)
data = pd.Series(np.cumsum(np.random.randn(50)))

# Build ARIMA model with order (1,1,1)
model = ARIMA(data, order=(1, 1, 1))
model_fit = model.fit()

# Predict next 5 points
start = len(data)
end = start + 4
predictions = model_fit.predict(start=start, end=end)

print("Predictions:")
print(predictions)
OutputSuccess
Important Notes

ARIMA works best on data that is steady or made steady by differencing.

Choosing the right p, d, q values is important and can be done by testing or using tools like AIC.

ARIMA models assume past patterns will continue into the future.

Summary

ARIMA models help predict future data points by using past values and errors.

They have three parts: p (lags), d (differencing), and q (errors).

Fitting an ARIMA model involves choosing these values and training on your data.