Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 2 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,21 +7,18 @@ This is a Python stats toolkit for easy and powerful statistical operations.
- Perform hypothesis testing
- Simplify data visualization

[![Python 3.8+](https://img.shields.io/badge/python-3.8+-blue.svg)](https://www.python.org/downloads/)
[![Python 3.9+](https://img.shields.io/badge/python-3.9+-blue.svg)](https://www.python.org/downloads/)
[![PyPI version](https://img.shields.io/pypi/v/py-stats-toolkit.svg)](https://pypi.org/project/py-stats-toolkit/)
[![PyPI pyversions](https://img.shields.io/pypi/pyversions/py-stats-toolkit.svg)](https://pypi.org/project/py-stats-toolkit/)
[![PyPI downloads](https://img.shields.io/pypi/dm/py-stats-toolkit.svg)](https://pypi.org/project/py-stats-toolkit/)
[![Python 3.9+](https://img.shields.io/badge/python-3.9+-blue.svg)](https://www.python.org/downloads/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Tests](https://github.com/ThePhoenixAgency/py-stats-toolkit/actions/workflows/tests.yml/badge.svg)](https://github.com/ThePhoenixAgency/py-stats-toolkit/actions/workflows/tests.yml)
[![Publish](https://github.com/ThePhoenixAgency/py-stats-toolkit/actions/workflows/publish.yml/badge.svg)](https://github.com/ThePhoenixAgency/py-stats-toolkit/actions/workflows/publish.yml)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![Imports: isort](https://img.shields.io/badge/%20imports-isort-%231674b1?style=flat&labelColor=ef8336)](https://pycqa.github.io/isort/)
[![Linting: flake8](https://img.shields.io/badge/linting-flake8-yellowgreen)](https://flake8.pycqa.org/)
[![Type checking: mypy](https://img.shields.io/badge/type%20checking-mypy-blue)](https://mypy-lang.org/)
[![Security: bandit](https://img.shields.io/badge/security-bandit-green)](https://bandit.readthedocs.io/)
[![Tests](https://img.shields.io/badge/tests-pytest-orange)](https://docs.pytest.org/)
[![Coverage](https://img.shields.io/badge/coverage-codecov-brightgreen)](https://codecov.io/)

## Getting Started

1. Clone the repo:
Expand Down
273 changes: 49 additions & 224 deletions py_stats_toolkit.egg-info/PKG-INFO
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Metadata-Version: 2.4
Name: py-stats-toolkit
Version: 1.0.4
Version: 1.0.5
Summary: Un toolkit Python pour l'analyse statistique et le traitement des données
Author-email: Phoenix Project <[email protected]>
License-Expression: MIT
Expand All @@ -11,45 +11,47 @@ Project-URL: Bug Tracker, https://github.com/ThePhoenixAgency/py-stats-toolkit/i
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Science/Research
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Scientific/Engineering :: Mathematics
Classifier: Topic :: Scientific/Engineering :: Statistics
Classifier: Operating System :: OS Independent
Requires-Python: >=3.8
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy>=1.20.0
Requires-Dist: pandas>=1.3.0
Requires-Dist: scipy>=1.7.0
Requires-Dist: matplotlib>=3.4.0
Requires-Dist: seaborn>=0.11.0
Requires-Dist: statsmodels>=0.13.0
Requires-Dist: scikit-learn>=1.0.0
Requires-Dist: networkx>=2.6.0
Requires-Dist: deap>=1.3.0
Requires-Dist: numpy>=2.0.0
Requires-Dist: pandas>=2.0.0
Requires-Dist: scipy>=1.10.0
Requires-Dist: matplotlib>=3.8.0
Requires-Dist: statsmodels>=0.14.0
Requires-Dist: scikit-learn>=1.3.0
Provides-Extra: dev
Requires-Dist: pytest>=7.0.0; extra == "dev"
Requires-Dist: pytest-cov>=3.0.0; extra == "dev"
Requires-Dist: black>=22.0.0; extra == "dev"
Requires-Dist: isort>=5.0.0; extra == "dev"
Requires-Dist: flake8>=4.0.0; extra == "dev"
Requires-Dist: mypy>=0.900; extra == "dev"
Requires-Dist: sphinx>=4.0.0; extra == "dev"
Requires-Dist: sphinx-rtd-theme>=1.0.0; extra == "dev"
Requires-Dist: build>=1.0.0; extra == "dev"
Requires-Dist: pytest>=8.3.0; extra == "dev"
Requires-Dist: pytest-cov>=6.0.0; extra == "dev"
Requires-Dist: coverage>=7.6.0; extra == "dev"
Requires-Dist: black>=24.10.0; extra == "dev"
Requires-Dist: isort>=5.13.0; extra == "dev"
Requires-Dist: flake8>=7.1.0; extra == "dev"
Requires-Dist: mypy>=1.13.0; extra == "dev"
Requires-Dist: sphinx>=8.1.0; extra == "dev"
Requires-Dist: sphinx-rtd-theme>=3.0.0; extra == "dev"
Requires-Dist: build>=1.2.0; extra == "dev"
Requires-Dist: twine>=6.0.0; extra == "dev"
Dynamic: license-file

# Py-Stats-Toolkit
# Py Stats Toolkit

Un toolkit Python complet pour l'analyse statistique et le traitement des données, conçu pour être simple d'utilisation tout en offrant des fonctionnalités avancées.
This is a Python stats toolkit for easy and powerful statistical operations.

## 🏆 Qualité du Code
## Features
- Generate descriptive statistics for datasets
- Perform hypothesis testing
- Simplify data visualization

[![Python 3.8+](https://img.shields.io/badge/python-3.8+-blue.svg)](https://www.python.org/downloads/)
[![Python 3.9+](https://img.shields.io/badge/python-3.9+-blue.svg)](https://www.python.org/downloads/)
[![PyPI version](https://img.shields.io/pypi/v/py-stats-toolkit.svg)](https://pypi.org/project/py-stats-toolkit/)
[![PyPI pyversions](https://img.shields.io/pypi/pyversions/py-stats-toolkit.svg)](https://pypi.org/project/py-stats-toolkit/)
[![PyPI downloads](https://img.shields.io/pypi/dm/py-stats-toolkit.svg)](https://pypi.org/project/py-stats-toolkit/)
Expand All @@ -60,211 +62,34 @@ Un toolkit Python complet pour l'analyse statistique et le traitement des donné
[![Imports: isort](https://img.shields.io/badge/%20imports-isort-%231674b1?style=flat&labelColor=ef8336)](https://pycqa.github.io/isort/)
[![Linting: flake8](https://img.shields.io/badge/linting-flake8-yellowgreen)](https://flake8.pycqa.org/)
[![Type checking: mypy](https://img.shields.io/badge/type%20checking-mypy-blue)](https://mypy-lang.org/)
[![Security: bandit](https://img.shields.io/badge/security-bandit-green)](https://bandit.readthedocs.io/)

## 🚀 Installation
## Getting Started

### Installation depuis PyPI (recommandé)
1. Clone the repo:
```
git clone https://github.com/ThePhoenixAgency/py-stats-toolkit.git
```
2. Navigate to the project folder:
```
cd py-stats-toolkit
```
3. Install the dependencies:
```
pip install -r requirements.txt
```

```bash
pip install py-stats-toolkit
```

### Installation depuis les sources

```bash
git clone https://github.com/ThePhoenixAgency/py-stats-toolkit.git
cd py-stats-toolkit
pip install -e .
```

## 📦 Fonctionnalités

### Statistiques Descriptives
- Calcul automatique de toutes les statistiques descriptives
- Gestion des valeurs manquantes
- Validation des données

### Régression Linéaire
- Régression linéaire simple et multiple
- Validation des hypothèses
- Diagnostics complets

### Analyse de Corrélation
- Matrices de corrélation
- Tests de significativité
- Visualisations avancées

### Visualisation
- Graphiques statistiques professionnels
- Personnalisation complète
- Export en haute qualité

## 🔧 Utilisation Rapide

```python
from py_stats_toolkit.stats import descriptives, regression, correlation
from py_stats_toolkit.visualization import plots
import pandas as pd

# Charger vos données
data = pd.read_csv('votre_fichier.csv')

# Statistiques descriptives
stats = descriptives.calculate_descriptive_statistics(data)
print(stats)

# Régression linéaire
model = regression.linear_regression(data, 'variable_cible', ['var1', 'var2'])
print(model.summary())

# Visualisation
plots.create_correlation_matrix(data)
```

## 🛠️ Scripts Utilitaires

### Publication Automatisée

Le projet inclut plusieurs scripts pour automatiser la publication :

#### `publish_automated.py` (Recommandé)
Publication PyPI 100% automatisée sans interaction utilisateur :

```bash
# Avec token PyPI
set TWINE_PASSWORD=ton_token_pypi
python publish_automated.py

# Ou avec fichier .pypirc
python publish_automated.py
```

#### `build_and_ready.py`
Prépare le package pour publication manuelle :

```bash
python build_and_ready.py
```

#### `release_and_publish.py`
Publication complète avec release GitHub (nécessite GITHUB_TOKEN) :

```bash
set GITHUB_TOKEN=ton_token_github
set TWINE_PASSWORD=ton_token_pypi
python release_and_publish.py
```

#### `clean_cache.py`
Nettoie tous les fichiers cache et temporaires :

```bash
python clean_cache.py
```

## 🔄 Workflow GitHub Actions

Le projet utilise GitHub Actions pour l'automatisation :

1. **Création d'une release** sur GitHub
2. **Déclenchement automatique** du workflow
3. **Build et tests** automatiques
4. **Publication PyPI** automatique

## 📚 Documentation

- **🌐 [Site officiel](https://phoenixguardiantools.github.io/py-stats-toolkit/)** - Hébergé gratuitement sur GitHub Pages
- [Documentation complète](https://py-stats-toolkit.readthedocs.io/)
- [Exemples d'utilisation](https://github.com/ThePhoenixAgency/py-stats-toolkit/tree/main/examples)
- [Guide de contribution](CONTRIBUTING.md)
- [Guide GitHub Pages](GITHUB_PAGES_GUIDE.md) - Comment avoir un domaine gratuit comme github.io

## 🧪 Tests et Qualité du Code

### Tests

```bash
# Installation des dépendances de développement
pip install -r requirements-dev.txt

# Exécution des tests
python -m pytest tests/

# Avec couverture
python -m pytest tests/ --cov=py_stats_toolkit --cov-report=html
```

### Contrôle de Qualité

Le projet suit les meilleures pratiques Python avec plusieurs outils de qualité :
## Usage
To use the toolkit, import the relevant modules and call desired functions as demonstrated in the [documentation](https://your-documentation-link.com).

```bash
# Formatage du code avec Black
black .

# Tri des imports avec isort
isort .

# Linting PEP8 avec flake8
flake8 .

# Vérification des types avec mypy
mypy py_stats_toolkit/

# Analyse de sécurité avec bandit
bandit -r py_stats_toolkit/
pip install py-stats-toolkit
```
## Contributing
Contributions are welcomed! Feel free to open an issue or pull request.

### Standards de Qualité

- **Black** : Formatage automatique du code selon les standards PEP8
- **isort** : Organisation automatique des imports
- **Flake8** : Détection des erreurs de style et de qualité
- **MyPy** : Vérification statique des types
- **Bandit** : Analyse de sécurité pour détecter les vulnérabilités
- **Pytest** : Framework de tests complet avec couverture

## 📋 Dépendances

### Dépendances principales
- numpy >= 1.20.0
- pandas >= 1.3.0
- scipy >= 1.7.0
- matplotlib >= 3.4.0
- seaborn >= 0.11.0
- statsmodels >= 0.13.0
- scikit-learn >= 1.0.0
- networkx >= 2.6.0
- deap >= 1.3.0

### Dépendances de développement
- pytest >= 7.0.0
- black >= 22.0.0
- isort >= 5.0.0
- flake8 >= 4.0.0
- mypy >= 0.900

## 🤝 Contribution

Les contributions sont les bienvenues ! Consultez notre [guide de contribution](CONTRIBUTING.md) pour plus de détails.

## 📄 Licence

Ce projet est sous licence MIT. Voir le fichier [LICENSE](LICENSE) pour plus de détails.

## 🔗 Liens Utiles

- [PyPI](https://pypi.org/project/py-stats-toolkit/)
- [GitHub](https://github.com/ThePhoenixAgency/py-stats-toolkit)
- [Issues](https://github.com/ThePhoenixAgency/py-stats-toolkit/issues)
- [Releases](https://github.com/ThePhoenixAgency/py-stats-toolkit/releases)

## 📞 Contact

- Email : [email protected]
- GitHub : [ThePhoenixAgency](https://github.com/ThePhoenixAgency)
## License
This project is licensed under the MIT License. See the LICENSE file for details.

---

**Version actuelle : 1.0.4** - Badges de qualité et conformité complète
### See my GitHub Agency
Check out the [profile](https://github.com/ThePhoenixAgency) for more projects and contributions!
13 changes: 13 additions & 0 deletions py_stats_toolkit.egg-info/SOURCES.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,22 @@ py_stats_toolkit.egg-info/SOURCES.txt
py_stats_toolkit.egg-info/dependency_links.txt
py_stats_toolkit.egg-info/requires.txt
py_stats_toolkit.egg-info/top_level.txt
py_stats_toolkit/algorithms/__init__.py
py_stats_toolkit/algorithms/correlation.py
py_stats_toolkit/algorithms/descriptive_stats.py
py_stats_toolkit/algorithms/probability.py
py_stats_toolkit/algorithms/regression.py
py_stats_toolkit/algorithms/variance.py
py_stats_toolkit/capsules/BaseCapsule.py
py_stats_toolkit/capsules/__init__.py
py_stats_toolkit/core/__init__.py
py_stats_toolkit/core/base.py
py_stats_toolkit/core/validators.py
py_stats_toolkit/utils/__init__.py
py_stats_toolkit/utils/data_processor.py
py_stats_toolkit/utils/parallel.py
tests/test_basic_imports.py
tests/test_correlation.py
tests/test_descriptives.py
tests/test_refactored_modules.py
tests/test_regression_module.py
35 changes: 17 additions & 18 deletions py_stats_toolkit.egg-info/requires.txt
Original file line number Diff line number Diff line change
@@ -1,20 +1,19 @@
numpy>=1.20.0
pandas>=1.3.0
scipy>=1.7.0
matplotlib>=3.4.0
seaborn>=0.11.0
statsmodels>=0.13.0
scikit-learn>=1.0.0
networkx>=2.6.0
deap>=1.3.0
numpy>=2.0.0
pandas>=2.0.0
scipy>=1.10.0
matplotlib>=3.8.0
statsmodels>=0.14.0
scikit-learn>=1.3.0

[dev]
pytest>=7.0.0
pytest-cov>=3.0.0
black>=22.0.0
isort>=5.0.0
flake8>=4.0.0
mypy>=0.900
sphinx>=4.0.0
sphinx-rtd-theme>=1.0.0
build>=1.0.0
pytest>=8.3.0
pytest-cov>=6.0.0
coverage>=7.6.0
black>=24.10.0
isort>=5.13.0
flake8>=7.1.0
mypy>=1.13.0
sphinx>=8.1.0
sphinx-rtd-theme>=3.0.0
build>=1.2.0
twine>=6.0.0
Loading
Loading