Seaborn - Verteilung der Beobachtungen

In kategorialen Streudiagrammen, die wir im vorherigen Kapitel behandelt haben, wird der Ansatz in den Informationen eingeschränkt, die er über die Verteilung von Werten innerhalb jeder Kategorie liefern kann. Lassen Sie uns nun weiter gehen und sehen, was uns den Vergleich mit Kategorien erleichtern kann.

Box Plots

Boxplot ist eine bequeme Möglichkeit, die Verteilung von Daten über ihre Quartile zu visualisieren.

Box-Plots haben normalerweise vertikale Linien, die sich von den Boxen erstrecken, die als Whisker bezeichnet werden. Diese Whisker zeigen Variabilität außerhalb des oberen und unteren Quartils an, daher werden Box-Plots auch als bezeichnetbox-and-whisker Handlung und box-and-whisker Diagramm. Alle Ausreißer in den Daten werden als einzelne Punkte dargestellt.

Beispiel

import pandas as pd
import seaborn as sb
from matplotlib import pyplot as plt
df = sb.load_dataset('iris')
sb.swarmplot(x = "species", y = "petal_length", data = df)
plt.show()

Ausgabe

Die Punkte auf dem Plot zeigen den Ausreißer an.

Geigengrundstücke

Violinplots sind eine Kombination des Boxplots mit den Kernel-Dichteschätzungen. Diese Diagramme sind daher einfacher zu analysieren und die Verteilung der Daten zu verstehen.

Verwenden wir den aufgerufenen Tipp-Datensatz, um mehr über Geigenpläne zu erfahren. Dieser Datensatz enthält Informationen zu den Tipps der Kunden in einem Restaurant.

Beispiel

import pandas as pd
import seaborn as sb
from matplotlib import pyplot as plt
df = sb.load_dataset('tips')
sb.violinplot(x = "day", y = "total_bill", data=df)
plt.show()

Ausgabe

Die Quartil- und Whiskerwerte aus dem Boxplot werden in der Geige angezeigt. Da das Geigenplot KDE verwendet, zeigt der breitere Teil der Geige die höhere Dichte an und der schmale Bereich repräsentiert eine relativ niedrigere Dichte. Der Interquartilbereich im Boxplot und der Anteil mit höherer Dichte in kde fallen in den gleichen Bereich jeder Kategorie des Geigenplots.

Das obige Diagramm zeigt die Verteilung von total_bill an vier Wochentagen. Wenn wir jedoch darüber hinaus sehen möchten, wie sich die Verteilung in Bezug auf das Geschlecht verhält, wollen wir dies im folgenden Beispiel untersuchen.

Beispiel

import pandas as pd
import seaborn as sb
from matplotlib import pyplot as plt
df = sb.load_dataset('tips')
sb.violinplot(x = "day", y = "total_bill",hue = 'sex', data = df)
plt.show()

Ausgabe

Jetzt können wir das Ausgabeverhalten zwischen Mann und Frau deutlich sehen. Wir können leicht sagen, dass Männer mehr Geld verdienen als Frauen, wenn sie sich die Handlung ansehen.

Und wenn die Farbtonvariable nur zwei Klassen hat, können wir die Handlung verschönern, indem wir jede Geige an einem bestimmten Tag in zwei statt in zwei Geigen aufteilen. Beide Teile der Geige beziehen sich auf jede Klasse in der Farbtonvariablen.

Beispiel

import pandas as pd
import seaborn as sb
from matplotlib import pyplot as plt
df = sb.load_dataset('tips')
sb.violinplot(x = "day", y="total_bill",hue = 'sex', data = df)
plt.show()

Ausgabe