-
Notifications
You must be signed in to change notification settings - Fork 0
Fix package structure, update badges, and resolve gitignore blocking source code #5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
EthanThePhoenix38
merged 8 commits into
main
from
copilot/update-readme-badges-and-content
Dec 16, 2025
Merged
Changes from all commits
Commits
Show all changes
8 commits
Select commit
Hold shift + click to select a range
52c192e
Initial plan
Copilot 5866646
Update README badges and fix version consistency
Copilot 6d6b48f
Add proper module implementations and fix gitignore
Copilot 8ebc0d7
Fix email typo in BaseCapsule docstring
Copilot 5d9a01a
Merge branch 'main' into copilot/update-readme-badges-and-content
EthanThePhoenix38 347f521
Update py_stats_toolkit/capsules/BaseCapsule.py
EthanThePhoenix38 b7a9008
Address code review feedback: validate method parameter, fix exceptio…
Copilot ae28c3a
Co-authored-by: EthanThePhoenix38 <103653068+EthanThePhoenix38@users.…
Copilot File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Some comments aren't visible on the classic Files Changed page.
There are no files selected for viewing
Binary file not shown.
Binary file not shown.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,270 @@ | ||
| Metadata-Version: 2.4 | ||
| Name: py-stats-toolkit | ||
| Version: 1.0.4 | ||
| Summary: Un toolkit Python pour l'analyse statistique et le traitement des données | ||
| Author-email: Phoenix Project <autopublisher.ai@gmail.com> | ||
| License-Expression: MIT | ||
| Project-URL: Homepage, https://github.com/ThePhoenixAgency/py-stats-toolkit | ||
| Project-URL: Repository, https://github.com/ThePhoenixAgency/py-stats-toolkit.git | ||
| Project-URL: Documentation, https://py-stats-toolkit.readthedocs.io/ | ||
| Project-URL: Bug Tracker, https://github.com/ThePhoenixAgency/py-stats-toolkit/issues | ||
| 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: Topic :: Scientific/Engineering | ||
| Classifier: Topic :: Scientific/Engineering :: Mathematics | ||
| Classifier: Topic :: Scientific/Engineering :: Statistics | ||
| Classifier: Operating System :: OS Independent | ||
| Requires-Python: >=3.8 | ||
| 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 | ||
| 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" | ||
| Dynamic: license-file | ||
|
|
||
| # 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. | ||
|
|
||
| ## 🏆 Qualité du Code | ||
|
|
||
| [](https://www.python.org/downloads/) | ||
| [](https://pypi.org/project/py-stats-toolkit/) | ||
| [](https://pypi.org/project/py-stats-toolkit/) | ||
| [](https://pypi.org/project/py-stats-toolkit/) | ||
| [](https://opensource.org/licenses/MIT) | ||
| [](https://github.com/ThePhoenixAgency/py-stats-toolkit/actions/workflows/tests.yml) | ||
| [](https://github.com/ThePhoenixAgency/py-stats-toolkit/actions/workflows/publish.yml) | ||
| [](https://github.com/psf/black) | ||
| [](https://pycqa.github.io/isort/) | ||
| [](https://flake8.pycqa.org/) | ||
| [](https://mypy-lang.org/) | ||
| [](https://bandit.readthedocs.io/) | ||
|
|
||
| ## 🚀 Installation | ||
|
|
||
| ### Installation depuis PyPI (recommandé) | ||
|
|
||
| ```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é : | ||
|
|
||
| ```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/ | ||
| ``` | ||
|
|
||
| ### 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 : autopublisher.ai@gmail.com | ||
| - GitHub : [ThePhoenixAgency](https://github.com/ThePhoenixAgency) | ||
|
|
||
| --- | ||
|
|
||
| **Version actuelle : 1.0.4** - Badges de qualité et conformité complète |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,15 @@ | ||
| LICENSE | ||
| README.md | ||
| pyproject.toml | ||
| py_stats_toolkit/__init__.py | ||
| py_stats_toolkit.egg-info/PKG-INFO | ||
| 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/capsules/BaseCapsule.py | ||
| py_stats_toolkit/capsules/__init__.py | ||
| tests/test_basic_imports.py | ||
| tests/test_correlation.py | ||
| tests/test_descriptives.py | ||
| tests/test_regression_module.py |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
|
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,20 @@ | ||
| 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 | ||
|
|
||
| [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 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| py_stats_toolkit |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file not shown.
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ok