Statistik für Programmierer - Inhaltsverzeichnis
Ein Box-Whisker-Diagramm ist ein Diagramm, das das Verständnis der Verteilung und Variation von Daten erleichtert. Angenommen, unten stehen 10 Testergebnisse für 10 Personen.
No | Mathematik-Punktzahl | Punktzahl in der Landessprache |
---|---|---|
1 | 74 | 81 |
2 | 65 | 62 |
3 | 40 | 32 |
4 | 62 | 67 |
5 | 85 | 41 |
6 | 67 | 50 |
7 | 82 | 85 |
8 | 71 | 70 |
9 | 60 | 67 |
10 | 99 | 97 |
Erstellen Sie anhand dieser Daten mit matplotlib ein Box-Whisker-Diagramm.
%matplotlib inline
import matplotlib.pyplot as plt
#Mathematik-Punktzahl
math = [74, 65, 40, 62, 85, 67, 82, 71, 60, 99]
#Punktzahl in der Landessprache
literature = [81, 62, 32, 67, 41, 50, 85, 70, 67, 97]
#Tupple von Punkten
points = (math, literature)
#Box Whisker
fig, ax = plt.subplots()
bp = ax.boxplot(points)
ax.set_xticklabels(['math', 'literature'])
plt.title('Box plot')
plt.xlabel('exams')
plt.ylabel('point')
#Speicherbereich der Y-Achse
plt.ylim([0,100])
plt.grid()
#Zeichnung
plt.show()
Das folgende Diagramm wird erstellt.
Dieser blaue Teil wird als Box bezeichnet, und die vertikale schwarze Linie wird als Schnurrbart bezeichnet. Der Schnurrbart wird zwischen den Minimal- und Maximalwerten gezogen. Das Feld repräsentiert den Quadranten.
Der nächste Abschnitt beschreibt, was ein Quadrant ist.
Es gibt einige Begriffe, die Sie benötigen, um Quadranten zu verstehen, also werde ich Sie durch diese führen.
Wenn die Daten in aufsteigender Reihenfolge angeordnet sind, werden die Daten an der N% -Position, die von Anfang an gezählt werden, als N-Perzentil bezeichnet. Im 30. Perzentil sind die Daten beispielsweise von Anfang an 30%. Das 0. Perzentil ist der Minimalwert und das 100. Perzentil ist der Maximalwert.
Der Quadrant des Hauptthemas. Der Quadrant bezieht sich auf die folgenden Perzentile. Durch Trennen an diesen drei Positionen kann die Anzahl der Daten in vier geteilt werden.
Perzentil | alias |
---|---|
25. Perzentil | Erster Quadrant |
50. Perzentil | Zweiter Quadrant (Median) |
75. Perzentil | Dritter Quadrant |
Was nach der folgenden Formel berechnet wird, wird als Quadrantenbereich oder IQR bezeichnet.
Quadrantenbereich(IQR) =75. Perzentil (dritter Quadrant) -25. Perzentil (erster Quadrant)
Da der Quadrant durch die Anzahl der Daten in vier geteilt wird, wird in den folgenden Abschnitten dieselbe Anzahl von Daten enthalten.
--Mindestwert-> Erster Quadrant
In der obigen Grafik ist die Länge jedes Abschnitts jedoch unterschiedlich. Dies bedeutet, dass die Daten ungleichmäßig sind. Das Intervall des 1. Quadranten-> 2. Quadranten ist sehr kurz, was bedeutet, dass die meisten Menschen ein Testergebnis von etwa 40 Punkten haben und voreingenommen sind.
Außerdem beträgt die Gesamtzahl der Daten die Hälfte der Gesamtzahl, wenn die drei Abschnitte des 1. Quadranten -> 2. Quadranten -> 3. Quadranten kombiniert werden. Mit anderen Worten, die Hälfte der Testergebnisse der Menschen liegt zwischen 39 und 70 Punkten.
Der Median und die Quadranten werden nicht gezogen, selbst wenn die Maximal- und Minimalwerte extrem sind, aber die Maximal- und Minimalwerte werden natürlich subtrahiert. Aufgrund abnormaler Daten wie Messfehlern können extreme Daten vorhanden sein. Wenn es also einen Extremwert gibt, betrachten wir ihn als Ausreißer und erklären, wie ein Box-Whisker-Diagramm erstellt wird.
Bei den oben genannten Box-Whiskern ist der Bart lang, wenn die Maximal- und Minimalwerte extrem sind. Im Fall eines Box-Whisker-Diagramms, das Ausreißer berücksichtigt, sollte die Länge der Whisker auf der Maximalwertseite bzw. der Minimalwertseite das 1,5-fache oder weniger der Box betragen, und Daten, die diesen Wert überschreiten, werden als Ausreißerwert angesehen.
Pythons Matplotlib scheint Ausreißer automatisch zu erkennen. Im folgenden Code habe ich 170 Punkte und 190 Punkte zu den Ergebnissen der Landessprache hinzugefügt. Der Test ist eine perfekte Punktzahl von 100, daher sollten die beiden nicht in Ordnung sein. Der Maßstab des Diagramms wurde auf 200 erhöht. Jetzt erstellen wir ein Diagramm.
%matplotlib inline
import matplotlib.pyplot as plt
#Punktzahl in der Landessprache
literature = [81, 62, 32, 67, 41, 50, 85, 100, 170, 190]
#Tupple von Punkten
points = (literature)
#Box Whisker
fig, ax = plt.subplots()
bp = ax.boxplot(points)
ax.set_xticklabels(['literature'])
plt.title('Box plot')
plt.xlabel('exams')
plt.ylabel('point')
#Speicherbereich der Y-Achse
plt.ylim([0,200])
plt.grid()
#Zeichnung
plt.show()
Es gibt zwei +
am oberen Rand des Diagramms.
Für diese beiden wurden 170 Punkte und 190 Punkte als Ausreißer angesehen.
Die Matplotlib von Python ist sehr praktisch, da sie diese automatisch zu erkennen scheint, ohne Ausreißer zu definieren.
das ist alles
Recommended Posts