Explorative Datenanalyse (EDA) mit Pandas Profiling
P andas profiling ist eine Python-Bibliothek, die eine automatisierte explorative Datenanalyse durchführt. Es generiert automatisch einen Datensatzprofilbericht, der wertvolle Erkenntnisse liefert.
pandas-profilinggeneriert Profilberichte von einem Pandas DataFrame. Die Pandas- df.describe()Funktion ist praktisch, aber für die explorative Datenanalyse etwas grundlegend. pandas-profilingerweitert Pandas DataFrameum df.profile_report(), wodurch automatisch ein standardisierter univariater und multivariater Bericht zum Datenverständnis generiert wird.
Für jede Spalte werden die folgenden Informationen (sofern für den Spaltentyp relevant) in einem interaktiven HTML-Bericht dargestellt:
- Typinferenz: Ermitteln Sie die Spaltentypen in einem DataFrame
- Wesentliches: Typ, eindeutige Werte, Angabe fehlender Werte
- Quantilstatistik: Minimalwert, Q1, Median, Q3, Maximum, Bereich, Interquartilbereich
- Beschreibende Statistik: Mittelwert, Modus, Standardabweichung, Summe, mittlere absolute Abweichung, Variationskoeffizient, Kurtosis, Schiefe
- Häufigste und extremste Werte
- Histogramme: kategorisch und numerisch
- Korrelationen: Warnungen vor hoher Korrelation, basierend auf verschiedenen Korrelationsmetriken (Spearman, Pearson, Kendall, Cramér's V, Phik)
- Fehlende Werte: durch Zählungen, Matrix und Heatmap
- Doppelte Zeilen: Liste der häufigsten doppelten Zeilen
- Textanalyse: gängigste Kategorien (Großbuchstaben, Kleinbuchstaben, Trennzeichen), Schriftarten (Latein, Kyrillisch) und Blöcke (ASCII, Kyrillisch)
- Datei- und Bildanalyse: Dateigrößen, Erstellungsdatum, Abmessungen, Angabe abgeschnittener Bilder und Vorhandensein von EXIF-Metadaten.
1. Installation ️
1.1. Pip verwenden
Sie können die Installation mit dem pipPaketmanager durchführen, indem Sie Folgendes ausführen:
pip install -U pandas-profiling
Sie können die Installation mit dem condaPaketmanager durchführen, indem Sie Folgendes ausführen:
conda install -c conda-forge pandas-profiling
import numpy as np
import pandas as pd
from pandas_profiling import ProfileReport
data = pd.read_csv("datasets/Telco-Customer-Churn.csv")
3. Bericht erstellen
Um den Standard-Profiling-Bericht zu erstellen, führen Sie einfach Folgendes aus:
profile = ProfileReport(data, title="Pandas Profiling Report")
data.profile_report()
Um eine HTML-Berichtsdatei zu generieren, speichern Sie diese ProfileReportin einem Objekt und verwenden Sie die to_file()Funktion:
profile.to_file("your_report.html")
# As a JSON string
json_data = profile.to_json()
# As a file
profile.to_file("your_report.json")
Eine Möglichkeit, dieses Problem zu lösen, besteht darin, den Bericht nur aus einem Teil aller uns vorliegenden Daten zu erstellen.
profile = ProfileReport(df.sample(n=100))
profile.to_file(output_file='output.html')
Output that the report is ready
Übersicht: meist globale Details zum Datensatz (Anzahl der Datensätze, Anzahl der Variablen, Gesamtfehlsignatur und Duplikate, Speicherbedarf)
Dieser Abschnitt bietet eine detaillierte Analyse der Variablen/Spalten/Merkmale des Datensatzes, die vollständig von der Art der Variablen/Spalten/Merkmale wie Numerisch, Zeichenfolge, Boolesch usw. abhängen.
Die Interaktionsabschnitte enthalten weitere Details zur bivariaten Analyse/multivariaten Analyse.
Es ist ein gängiges Hilfsmittel zur Beschreibung einfacher Zusammenhänge, ohne eine Aussage über Ursache und Wirkung zu treffen. Im Pandas-Profiling-Bericht gibt es fünf Arten von Korrelationskoeffizienten: Pearsons r, Spearmans ρ, Kendalls τ, Phik (φk) und Cramer's V (φc).
Dieser Bericht enthält auch eine detaillierte Analyse fehlender Werte in den vier Diagrammtypen Anzahl, Matrix, Heatmap und Dendrogramm.
In diesem Abschnitt werden die ersten und letzten 10 Zeilen des Datensatzes angezeigt.
Abschluss
Pandas Profiling ist ein fantastisches Python-Paket für explorative Analysen (EDA). Es erweitert Pandas für statistische Analysezusammenfassungen, einschließlich Korrelationen, fehlender Werte, Verteilung (Quantil) und deskriptiver Statistiken. Sie können die EDA, die ich mit dem Diabetes-Datensatz auf Kaggle erstellt habe, hier ansehen. Sie können den Titanic-Datensatzbericht auch hier einsehen.
Ich empfehle Ihnen auf jeden Fall, es auszuprobieren!
Vielen Dank, dass Sie diesen Artikel gelesen haben. Sie können auf die detaillierten Codes des Projekts und anderer Projekte auf meinem Github-Konto oder Kaggle-Konto zugreifen . Viel Spaß beim Codieren!
Wenn Sie Feedback haben, können Sie es gerne im Kommentarbereich teilen oder mich kontaktieren , wenn Sie weitere Informationen benötigen.
Verweise
- https://pandas-profiling.ydata.ai/docs/master/index.html
- https://www.numpyninja.com/post/eda-using-pandas-profiling

![Was ist überhaupt eine verknüpfte Liste? [Teil 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































