Auf einen Blick: Die Bincount-Funktion von NumPy zählt effizient eindeutige Werte in einem Array und erleichtert so die statistische Analyse. Der Leitfaden enthält praktische Beispiele und Visualisierungen mit Matplotlib, um dessen Anwendung zu veranschaulichen.
- Demonstriert die Erstellung von Arrays und die Nutzung von Bincount.
- Enthält vollständigen Code zum Zählen und Zeichnen von Daten.
- Links zu weiteren Ressourcen zu Datenvisualisierung und maschinellem Lernen.
NumPy macht weit mehr als nur Arrays zu erstellen. Dieses Arbeitstier übernimmt auch Statistiken und Funktionen wie Korrelationen, die für wissenschaftliches Rechnen und maschinelles Lernen wichtig sind. Wir beginnen unsere Übersicht über NumPy-statistische Funktionen mit bincount().
Die Bincount-Funktion
In NumPy zählt die Bincount-Funktion die Anzahl der eindeutigen Werte in einem Array. Zuerst erstellen wir ein Array mit:
- Drei Einsen
- Zwei 2er
- Fünf Vierer
- One 5
arr = np.array([1,1,1,2,2,3,4,4,4,4,4,5])
Ergebnisse in:
array([1, 1, 1, 2, 2, 3, 4, 4, 4, 4, 4, 5])
Dann verwenden wir die NumPy bincount()- Funktion, um eindeutige Elemente zu zählen.
d=np.bincount(arr)
Führt zu einem Array von Zählungen nach Indexposition. Mit anderen Worten, es zählt von links nach rechts. Beachten Sie die 0 davor. Aus irgendeinem seltsamen Grund gibt NumPy einen Bin mehr zurück als die Größe des Arrays. Deshalb werden wir einige Anpassungen vornehmen.
array([0, 3, 2, 1, 5, 1])
Wir erstellen ein Array mit einzigartigen Elementen aus arr. Das machen wir, damit wir die Anzahl später gegen die Werte aufzeichnen können.
a=np.unique(arr)
Ergebnisse in:
array([1, 2, 3, 4, 5])
Da NumPy einen Bin mehr zurückgibt als die Größe des Arrays, fügen wir am Anfang eine 0 ein, sodass die eindeutige Anzahl und die Bin-Anzahl die gleiche Form haben und wir sie plotten können.
b=np.insert(arr,0,[0])
Das ergibt uns:
array([0, 1, 1, 1, 2, 2, 3, 4, 4, 4, 4, 4, 5])
Dann erstellen wir daraus eine eindeutige Liste:
c=np.unique(b)
Jetzt hat es die zusätzliche 0, um mit dem Bincount übereinzustimmen
array([0, 1, 2, 3, 4, 5])
Nun haben c und d die gleiche Form, sodass wir sie mit Matplotlib zeichnen können.
plt.bar(c,d)
Ergebnisse in diesem Diagramm:
Wie Sie sehen können, gibt es:
- Fünf Elemente mit dem Wert 0
- Ein Element mit dem Wert 3
Der vollständige Code
Hier ist der vollständige Code.
import numpy as np
import matplotlib.pyplot as plt
arr = np.array([1,1,1,2,2,3,4,4,4,4,4,5])
d=np.bincount(arr)
a=np.unique(arr)
b=np.insert(arr,0,[0])
c=np.unique(b)
plt.bar(c,d)
Verwandte Literatur
Pandas Guide
- Pandas-Einführung & Tutorials für Anfänger
- Pandas: Wie man CSV- und JSON-Dateien liest
- Wie man ein Pandas-Dataframe aus einem Wörterbuch erstellt
- Wie man Daten in Pandas gruppiert, verkettet und zusammenführt
- Pandas-Datentypen
- Umgang mit fehlenden Daten in Pandas: NaN-Werte erklärt
- NumPy-Einführung mit Beispielen
- Verwendung von StringIO, um getrennte Textdateien in NumPy zu lesen
- Verwendung der NumPy-Bincount-Statistikfunktion
- Top NumPy Statistische Funktionen & Verteilungen
Diese Beiträge sind meine eigenen und spiegeln nicht unbedingt die Position, Strategien oder Meinung von BMC wider.