Metadata-Version: 2.4
Name: mltools-mouhameddiouf
Version: 0.2.0
Summary: Utilitaires ML légers : normalisation, split, encodage, standardisation
Project-URL: Homepage, https://github.com/mouhameddiouf/mltools
Project-URL: Repository, https://github.com/mouhameddiouf/mltools
Project-URL: Bug Tracker, https://github.com/mouhameddiouf/mltools/issues
Author-email: Mouhamed Diouf <diagautosn221@gmail.com>
License: MIT
License-File: LICENSE
Keywords: data science,machine learning,preprocessing
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Python: >=3.10
Requires-Dist: numpy>=1.24
Provides-Extra: dev
Requires-Dist: build; extra == 'dev'
Requires-Dist: mypy; extra == 'dev'
Requires-Dist: pytest-cov; extra == 'dev'
Requires-Dist: pytest>=7.0; extra == 'dev'
Requires-Dist: ruff; extra == 'dev'
Requires-Dist: twine; extra == 'dev'
Description-Content-Type: text/markdown

# mltools

Utilitaires ML légers : normalisation, train/test split, encodage one-hot, standardisation.

Auteur : **Mouhamed Diouf**

## Installation

```bash
pip install mltools-mouhameddiouf
```

## Utilisation

```python
import numpy as np
from mltools import normalize, train_test_split, one_hot_encode, standardize

# Normalisation min-max (entre 0 et 1)
X = np.array([[1, 2], [3, 4], [5, 6]])
X_norm = normalize(X)

# Standardisation (moyenne 0, écart-type 1)
X_std = standardize(X)

# Découpage train/test
y = np.array([0, 1, 0])
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.33)

# Encodage one-hot des labels
y_oh = one_hot_encode(y)
```

## Fonctions disponibles

| Fonction | Description |
|----------|-------------|
| `normalize(X)` | Min-max scaling entre 0 et 1 |
| `standardize(X)` | Standardisation (moyenne 0, écart-type 1) |
| `train_test_split(X, y, test_size, random_state)` | Découpe train/test |
| `one_hot_encode(y)` | Encodage one-hot d'un vecteur de labels |

## Développement

```bash
# Installer en mode éditable avec les extras dev
pip install -e ".[dev]"

# Lancer les tests
pytest tests/ -v --cov=src/mltools

# Vérifier le style
ruff check src/

# Vérifier les types
mypy src/mltools/
```

## Licence

MIT — voir le fichier [LICENSE](LICENSE).
