Metadata-Version: 2.4
Name: forecastbox
Version: 0.1.0
Summary: Forecast containers, evaluation metrics, and cross-validation for time series
Author: NodesEcon
License: MIT
License-File: LICENSE
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: Mathematics
Requires-Python: >=3.11
Requires-Dist: click>=8.0
Requires-Dist: matplotlib>=3.7
Requires-Dist: numpy>=1.24
Requires-Dist: pandas>=2.0
Provides-Extra: dev
Requires-Dist: pyright>=1.1; extra == 'dev'
Requires-Dist: pytest-cov>=4.0; extra == 'dev'
Requires-Dist: pytest>=7.0; extra == 'dev'
Requires-Dist: ruff>=0.4; extra == 'dev'
Description-Content-Type: text/markdown

# forecastbox

Forecast containers, evaluation metrics, and cross-validation for time series.

## Installation

```bash
pip install -e ".[dev]"
```

## Quick Start

```python
import numpy as np
import pandas as pd
from forecastbox import Forecast
from forecastbox.metrics import mae, rmse
from forecastbox.datasets import load_dataset

# Create a forecast
fc = Forecast(
    point=np.array([100.5, 101.2, 102.0]),
    index=pd.date_range('2024-01', periods=3, freq='MS'),
    model_name='MyModel',
    horizon=3
)

# Evaluate
actual = np.array([100.8, 100.9, 103.1])
print(f"MAE: {mae(actual, fc.point):.2f}")
print(f"RMSE: {rmse(actual, fc.point):.2f}")

# Load dataset
data = load_dataset('macro_brazil')
print(data['ipca'].head())
```

## License

MIT
