Skip to main content

A Nixtla integration for Yohou

Project description

Yohou-Nixtla

Python Version License PyPI Version Conda Version codecov

What is Yohou-Nixtla?

Yohou-Nixtla brings the power of Nixtla's forecasting ecosystem to Yohou, providing Yohou-compatible wrappers for statistical, machine learning, and deep learning time series models.

This integration enables you to use Nixtla's high-performance forecasters (StatsForecast, NeuralForecast) within Yohou's unified API for time series forecasting. All models work seamlessly with Yohou's features: polars DataFrames, panel data support, cross-validation, and hyperparameter search via GridSearchCV/RandomizedSearchCV.

What are the features of Yohou-Nixtla?

  • Statistical Models: AutoARIMA, AutoETS, AutoTheta, ARIMA, Holt-Winters, Naive, and more from StatsForecast, providing fast, production-ready statistical forecasters.
  • Neural Models: NBEATS, NHITS, MLP, PatchTST, TimesNet from NeuralForecast, offering state-of-the-art deep learning architectures.
  • Panel Data: Native support for multiple time series with __ column naming convention (e.g., sales__store_1, sales__store_2).
  • Yohou Compatible: Full fit/predict, get_params/set_params, clone compatibility. Works with GridSearchCV, pipelines, and the Yohou ecosystem.
  • Polars Native: All data handling uses polars DataFrames for high-performance time series operations.

Note: Nixtla's MLForecast is not wrapped as Yohou already provides PointReductionForecaster, which turns any scikit-learn regressor (Ridge, LightGBM, XGBoost, …) into a recursive multi-step forecaster with full support for feature transformers, target transformers, and panel data.

How to install Yohou-Nixtla?

Install the Yohou-Nixtla package using pip:

pip install yohou_nixtla

or using uv:

uv pip install yohou_nixtla

or using conda:

conda install -c conda-forge yohou_nixtla

or using mamba:

mamba install -c conda-forge yohou_nixtla

or alternatively, add yohou_nixtla to your requirements.txt or pyproject.toml file.

How to get started with Yohou-Nixtla?

1. Fit a Statistical Forecaster

Use AutoARIMA for automatic ARIMA model selection:

import polars as pl
from yohou_nixtla import AutoARIMAForecaster

# Load your time series data (must have a "time" column)
y = pl.DataFrame({
    "time": pl.datetime_range(start="2020-01-01", end="2020-12-31", interval="1d", eager=True),
    "sales": [100 + i * 0.5 + (i % 7) * 10 for i in range(366)],
})

# Fit and predict
forecaster = AutoARIMAForecaster(season_length=7)
forecaster.fit(y, forecasting_horizon=14)
y_pred = forecaster.predict()

2. Train Deep Learning Models

Neural models for complex patterns:

from yohou_nixtla import NHITSForecaster

forecaster = NHITSForecaster(input_size=30, max_steps=100)
forecaster.fit(y, forecasting_horizon=14)
y_pred = forecaster.predict()

3. Panel Data Forecasting

Forecast multiple time series simultaneously:

# Panel data with __ separator
y_panel = pl.DataFrame({
    "time": pl.datetime_range(start="2020-01-01", end="2020-12-31", interval="1d", eager=True),
    "sales__store_1": [...],
    "sales__store_2": [...],
})

forecaster = AutoARIMAForecaster(season_length=7)
forecaster.fit(y_panel, forecasting_horizon=14)
y_pred = forecaster.predict()  # Predictions for all stores

How do I use Yohou-Nixtla?

Full documentation is available at https://yohou-nixtla.readthedocs.io/.

Interactive examples are available in the examples/ directory:

Can I contribute?

We welcome contributions, feedback, and questions:

If you are interested in becoming a maintainer or taking a more active role, please reach out to Guillaume Tauzin on GitHub Discussions.

Where can I learn more?

Here are the main Yohou-Nixtla resources:

For questions and discussions, you can also open a discussion.

License

This project is licensed under the terms of the Apache-2.0 License.

Made by stateful-y

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

yohou_nixtla-0.1.0a2.tar.gz (115.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

yohou_nixtla-0.1.0a2-py3-none-any.whl (25.8 kB view details)

Uploaded Python 3

File details

Details for the file yohou_nixtla-0.1.0a2.tar.gz.

File metadata

  • Download URL: yohou_nixtla-0.1.0a2.tar.gz
  • Upload date:
  • Size: 115.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for yohou_nixtla-0.1.0a2.tar.gz
Algorithm Hash digest
SHA256 7e7dd7462c55724c1d0c98028110a23c9d99c16cdeb70bccee84d4ab2b4bfb4a
MD5 0385d6218a9e3a6a88da4e684c2ea71b
BLAKE2b-256 d4061137392d621d9256bec054fb08b9251670d5397948e5a5f356dc4670d5a7

See more details on using hashes here.

Provenance

The following attestation bundles were made for yohou_nixtla-0.1.0a2.tar.gz:

Publisher: publish-release.yml on stateful-y/yohou-nixtla

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file yohou_nixtla-0.1.0a2-py3-none-any.whl.

File metadata

  • Download URL: yohou_nixtla-0.1.0a2-py3-none-any.whl
  • Upload date:
  • Size: 25.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for yohou_nixtla-0.1.0a2-py3-none-any.whl
Algorithm Hash digest
SHA256 73f0352d1ae032ff459b752ad1eff904d7b207e2081d46b10bddadcc056ea28a
MD5 eb7959f466fa92814771b5103a80dd2e
BLAKE2b-256 e4ce1e84cc2408f743c955973197d44497005498f1a854e1514718b64dfea31a

See more details on using hashes here.

Provenance

The following attestation bundles were made for yohou_nixtla-0.1.0a2-py3-none-any.whl:

Publisher: publish-release.yml on stateful-y/yohou-nixtla

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page