Documents | Discorde | Débordement de pile | Dernier journal des modifications
Aimez-vous ce projet? Montrez-nous votre amour et donnez votre avis !
L'objectif principal ydata-profiling
est de fournir une expérience d'analyse exploratoire des données (EDA) en une seule ligne dans une solution cohérente et rapide. Comme la fonction pandas df.describe()
, qui est très pratique, le profilage ydata fournit une analyse étendue d'un DataFrame tout en permettant à l'analyse des données d'être exportée dans différents formats tels que html et json .
Le package génère une analyse simple et digérée d'un ensemble de données, comprenant des séries chronologiques et du texte .
Vous recherchez une solution évolutive pouvant s'intégrer pleinement à vos systèmes de bases de données ?
Tirez parti de YData Fabric Data Catalog pour vous connecter à différentes bases de données et stockages (Oracle, snowflake, PostGreSQL, GCS, S3, etc.) et profitez d'une expérience de profilage interactive et guidée dans Fabric. Consultez la version communautaire.
pip install ydata-profiling
ou
conda install -c conda-forge ydata-profiling
Commencez par charger votre DataFrame
pandas comme vous le feriez normalement, par exemple en utilisant :
import numpy as np
import pandas as pd
from ydata_profiling import ProfileReport
df = pd . DataFrame ( np . random . rand ( 100 , 5 ), columns = [ "a" , "b" , "c" , "d" , "e" ])
Pour générer le rapport de profilage standard, exécutez simplement :
profile = ProfileReport ( df , title = "Profiling Report" )
Le rapport contient trois sections supplémentaires :
Le support Spark a été publié, mais nous sommes toujours à la recherche d'une paire de mains supplémentaire ?. Vérifiez les travaux en cours !.
Le profilage YData peut être utilisé pour fournir une variété de cas d'utilisation différents. La documentation comprend des guides, des trucs et astuces pour y faire face :
Cas d'utilisation | Description |
---|---|
Comparer des ensembles de données | Comparaison de plusieurs versions du même ensemble de données |
Profilage d'un ensemble de données de séries chronologiques | Générer un rapport pour un ensemble de données de séries chronologiques avec une seule ligne de code |
Profilage de grands ensembles de données | Conseils sur la façon de préparer les données et de configurer ydata-profiling pour travailler avec de grands ensembles de données |
Gestion des données sensibles | Générer des rapports qui tiennent compte des données sensibles dans l'ensemble de données d'entrée |
Métadonnées des ensembles de données et dictionnaires de données | Compléter le rapport avec des détails sur l'ensemble de données et des dictionnaires de données spécifiques aux colonnes |
Personnalisation de l'apparence du rapport | Modification de l'apparence de la page du rapport et des visualisations contenues |
Bases de données de profilage | Pour une expérience de profilage transparente dans les bases de données de votre organisation, consultez Fabric Data Catalog, qui permet de consommer des données provenant de différents types de stockage tels que les RDBM (Azure SQL, PostGreSQL, Oracle, etc.) et les stockages d'objets (Google Cloud Storage, AWS S3, Flocon de neige, etc.), entre autres. |
Il existe deux interfaces pour consommer le rapport dans un notebook Jupyter : via des widgets et via un rapport HTML intégré.
Ce qui précède est réalisé en affichant simplement le rapport sous la forme d'un ensemble de widgets. Dans un notebook Jupyter, exécutez :
profile . to_widgets ()
Le rapport HTML peut être directement intégré dans une cellule de la même manière :
profile . to_notebook_iframe ()
Pour générer un fichier de rapport HTML, enregistrez le ProfileReport
dans un objet et utilisez la fonction to_file()
:
profile . to_file ( "your_report.html" )
Alternativement, les données du rapport peuvent être obtenues sous forme de fichier JSON :
# As a JSON string
json_data = profile . to_json ()
# As a file
profile . to_file ( "your_report.json" )
Pour les fichiers CSV au format standard (qui peuvent être lus directement par les pandas sans paramètres supplémentaires), l'exécutable ydata_profiling
peut être utilisé dans la ligne de commande. L'exemple ci-dessous génère un rapport nommé Exemple de rapport de profilage , à l'aide d'un fichier de configuration appelé default.yaml
, dans le fichier report.html
en traitant un ensemble de données data.csv
.
ydata_profiling --title " Example Profiling Report " --config_file default.yaml data.csv report.html
Des détails supplémentaires sur la CLI sont disponibles dans la documentation.
Les exemples de rapports suivants présentent les possibilités du package sur un large éventail d’ensembles de données et de types de données :
Des détails supplémentaires, y compris des informations sur la prise en charge des widgets, sont disponibles dans la documentation.
Vous pouvez installer à l'aide du gestionnaire de packages pip
en exécutant :
pip install -U ydata-profiling
Le package déclare des « extras », des ensembles de dépendances supplémentaires.
[notebook]
: prise en charge du rendu du rapport dans les widgets du notebook Jupyter.[unicode]
: prise en charge d'une analyse Unicode plus détaillée, au détriment de l'espace disque supplémentaire.[pyspark]
: prise en charge de pyspark pour l'analyse de grands ensembles de donnéesInstallez-les avec par exemple
pip install -U ydata-profiling[notebook,unicode,pyspark]
Vous pouvez installer à l'aide du gestionnaire de packages conda
en exécutant :
conda install -c conda-forge ydata-profiling
Téléchargez le code source en clonant le référentiel ou cliquez sur Télécharger ZIP pour télécharger la dernière version stable.
Installez-le en accédant au répertoire approprié et en exécutant :
pip install -e .
Le rapport de profilage est rédigé en HTML et CSS, ce qui signifie qu'un navigateur moderne est requis.
Vous avez besoin de Python 3 pour exécuter le package. D'autres dépendances peuvent être trouvées dans les fichiers d'exigences :
Nom de fichier | Exigences |
---|---|
exigences.txt | Exigences du forfait |
exigences-dev.txt | Exigences pour le développement |
exigences-test.txt | Exigences pour les tests |
configuration.py | Exigences pour les widgets, etc. |
Pour maximiser son utilité dans des contextes réels, ydata-profiling
dispose d'un ensemble d'intégrations implicites et explicites avec une variété d'autres acteurs de l'écosystème de la science des données :
Type d'intégration | Description |
---|---|
Autres bibliothèques DataFrame | Comment calculer le profilage des données stockées dans des bibliothèques autres que pandas |
De grandes attentes | Générer des suites d'attentes Great Expectations directement à partir d'un rapport de profilage |
Applications interactives | Intégration de rapports de profilage dans les applications Streamlit, Dash ou Panel |
Pipelines | Intégration avec les outils d'exécution de workflow DAG comme Airflow ou Kedro |
Services cloud | Utilisation ydata-profiling dans les services de calcul hébergés comme Lambda, Google Cloud ou Kaggle |
IDE | Utilisation ydata-profiling directement à partir d'environnements de développement intégrés tels que PyCharm |
Besoin d'aide ? Vous souhaitez partager un point de vue ? Signaler un bug ? Des idées de collaborations ? Contactez-nous via les canaux suivants :
Besoin d'aide ?
Obtenez des réponses à vos questions avec un propriétaire de produit en réservant un chat Pawsome ! ?
❗ Avant de signaler un problème sur GitHub, consultez Problèmes courants.
Découvrez comment vous impliquer dans le Guide de contribution.
Un endroit à bas seuil pour poser des questions ou commencer à contribuer est le Discord de la communauté Data Centric AI.
Un grand merci à tous nos incroyables contributeurs !
Mur des contributeurs réalisé avec contrib.rocks.