Pandas Groupby Durchschnitt

Pandas Groupby Durchschnitt



Wenn wir zwei oder mehr Werte addieren und ihre Summe durch die Gesamtzahl der addierten Werte dividieren, ist das Ergebnis ein Durchschnitt. Pandas Mean gibt den Durchschnitt der Daten oder Werte entlang einer bestimmten Achse zurück. Eine Reihe mit dem Durchschnitt über eine Achse wird von pandas zurückgegeben, wenn die mean()-Methode auf einen Datenrahmen angewendet wird. Pandas geben einen numerischen Wert (einzelne Zahl) zurück, wenn „mean()“ auf eine Reihe angewendet wird. Die Funktionen können nach dem Erstellen der Kategoriengruppen auf die Kategorien angewendet werden. Es ist eine einfache Idee, aber eine hochwirksame Technik, die häufig in der Datenwissenschaft angewendet wird. Es ermöglicht uns, eine Zusammenfassung der Daten für jede Gruppe zu erstellen, gruppenspezifische Änderungen vorzunehmen und eine Datenfilterung durchzuführen. Mit der Funktion groupby() kann das Objekt geteilt, eine Funktion angewendet und die Produkte dann kombiniert werden. Große Datensätze können damit gruppiert und Operationen an den Gruppen durchgeführt werden.

Wie verwende ich die Methode groupby.mean() in Pandas?

Um den Durchschnitt eines Datenrahmens oder den Durchschnitt bestimmter Spalten eines Datenrahmens zu berechnen, können wir die Funktion groupby.mean() verwenden. Wir werden in den folgenden Beispielen zeigen, wie man es verwendet.







Beispiel Nr. 01: Bestimmen Sie den Durchschnitt einer einzelnen Spalte mit ganzen Zahlen, indem Sie die Daten einer einzelnen Spalte gruppieren

Mit der Funktion pd.DataFrame() erstellen wir zuerst einen Datenrahmen, damit wir die Daten der Spalte oder Spalten des Datenrahmens in Gruppen unterteilen und dann ihren Mittelwert finden können. Bevor wir den Datenrahmen erstellen, müssen wir das pandas-Modul zusammen mit der numpy-Bibliothek importieren.





Wie zu sehen ist, haben wir unseren Datenrahmen mithilfe des Pandas-Wörterbuchs erstellt. Wir haben 3 Spalten in unserem df-Datenrahmen, d. h. „Artikel“, „Hersteller“ und „Menge“. In der Spalte 'Artikel' haben wir die Werte ('Hemd', 'Krawatte', 'Hose', 'Hemd', 'Krawatte', 'Hose', 'Hemd', 'Hose', 'Hose', ' tie'), während die Spalten 'manufacturer' und 'quantity' die Werte enthalten ('italy', 'france', 'china', 'france',  'china', 'italy', 'china', 'italy', „Frankreich“, „China“) bzw. (13, 16, 21, 32, 26, 41, 24, 42, 12, 15). Lassen Sie uns die Werte in der Herstellerspalte gruppieren und den mittleren Mengenwert für jeden einzelnen Hersteller bestimmen.





Der Herstellerwert „China“ hat einen durchschnittlichen Mengenwert von 21,5, der durchschnittliche Mengenwert von „Frankreich“ ist 20,0 und der durchschnittliche Mengenwert von „Italien“ ist 32,0. Wir können auch einen Index für die Ausgabe angeben, indem wir die Funktion reset_index mit der Funktion groupby.mean() verwenden.



Beispiel Nr. 02: Ermitteln Sie den Mittelwert einer einzelnen Float-Spalte, indem Sie die Daten einer einzelnen Spalte gruppieren

Wir haben gesehen, wie wir nach dem Gruppieren der Daten den Mittelwert der Integer-Spalte ermitteln können. Lassen Sie uns nun eine andere Datentypspalte wie Float ausprobieren. Ein Datenrahmen mit mindestens einer Spalte mit Float-Werten wird mit der Funktion pd.DataFrame() erstellt.

Indem wir ein Wörterbuch in pd.DataFrame() einfügen, haben wir einen Datenrahmen mit drei Spalten erstellt. Die Spalte 'name' speichert die Namen einiger zufälliger Spieler ('Sam', 'Jay', 'Leo', 'Mike', 'Will', 'Billy', 'Jhonny', 'Lara', 'Hanna', 'Tony'), die Spalte 'Team' stellt das Team dar, dem jeder Spieler angehört ('A', 'A', 'B',  'A', 'B', 'A', 'C', 'B ', 'C', 'C'), und die Spalte 'height' speichert die Körpergröße jedes Spielers als Float-Wert (5.6, 5.4, 6.3, 5.2, 5.5, 6.4, 5.6, 5.8, 6.0, 5.2). Lassen Sie uns die Daten in der Spalte „Team“ gruppieren und den mittleren Größenwert für jeden einzelnen „Team“-Wert bestimmen.

Sie können sehen, dass die durchschnittliche Größe der Spieler von Team A 5,65 beträgt, während die durchschnittliche Größe der Spieler von Team B und C 5,866 bzw. 5,6 beträgt.

Beispiel # 03: Bestimmen Sie den Mittelwert mehrerer Spalten mit der Funktion groupby.mean()

In den vorherigen Beispielen haben wir den Durchschnitt einer einzelnen Spalte bestimmt. Es kann aber auch der Mittelwert mehrerer Spalten für jede Gruppe bestimmt werden. Erstellen wir einen Datenrahmen mit mehr als einer numerischen Spalte, nachdem wir die Pandas- und Numpy-Module importiert haben.

Im neu erstellten Datenrahmen gibt es drei Spalten mit den Bezeichnungen „Name“, „Punktzahl“ und „Spiele“. Die Spaltennamen mit den Datenwerten als Zeichenfolge ('Ron', 'Jim', 'Dany', 'Jim', 'Jim', 'Dany', 'Ron', 'Ron', 'Dany', 'Jim' ), während „Punktzahl“ und „Spiele“ aus numerischen Daten wie (3, 4, 2, 4, 1, 5, 2, 3, 1, 2) und (2, 3, 1, 2, 1, 3) bestehen , 4, 1, 2, 1). Lassen Sie uns nun den Mittelwert der Spalte „Punktzahl“ und „Übereinstimmungen“ finden, nachdem wir die Daten der Spalte „Name“ gruppiert haben. Dazu wird die Funktion groupby.mean() verwendet.

Es ist festzustellen, dass die Gruppe „Dany“ in 2,00 Spielen eine durchschnittliche Punktzahl von 2,66 hat. Die Gruppe Jim hat eine durchschnittliche Punktzahl von 2,75 und der durchschnittliche Wert der gespielten Spiele beträgt 1,75. Während die Gruppe „Ron“ einen mittleren Scorewert von 2,66 hat und der Mittelwert der gespielten Spiele 2,33 beträgt.

Der Durchschnitt einer Gruppe von Kategorien durch das Objekt kann auch mit der Methode agg() berechnet werden. Wir liefern den Mittelwert als Argument an die Funktion agg(). Um mit einzelnen oder mehreren Operationen über die angegebene Achse zu aggregieren, können wir die Funktion agg() verwenden.

Die Ausgabe ist die gleiche wie zuvor.

Beispiel Nr. 04: Bestimmen Sie den Mittelwert bestimmter Spalten, indem Sie mehrere Spalten gruppieren

In den Beispielen 1, 2 und 3 haben wir die Werte oder Daten einer einzelnen Spalte gruppiert. Jetzt werden wir mehrere Spalten gruppieren, indem wir die Liste der Spaltenbezeichnungen in der Funktion groupby() verwenden, und dann den Durchschnittswert für jede Gruppe ermitteln. Ein Wörterbuch „d“ wird innerhalb der Funktion pd.Dataframe() als Eingabe zum Erstellen des Datenrahmens übergeben.

Wir haben den erforderlichen Datenrahmen erstellt. Die Spalte 'Sport' speichert den Namen einiger Sportarten ('Badminton', 'Fußball', 'Tennis', 'Basketball', 'Fußball', 'Tennis', 'Basketball', 'Fußball', 'Badminton', ' Basketball', 'Basketball', 'Tennis'), die Namen von Ländern ('China', 'Russland', 'Italien', 'Spanien', 'Russland', 'Italien', 'China', 'Italien', ' Spanien“, „China“, „Russland“, „Italien“) werden in der Spalte „Land“ gespeichert. Wohingegen wir in der Spalte „Sieg“ die Anzahl der von jedem Land in jeder Sportart gewonnenen Spiele gespeichert haben (13, 10, 6, 7, 10, 12, 7, 11, 8, 13, 11, 6). Lassen Sie uns die Funktion groupby.mean() verwenden, um den Mittelwert der Spaltenwerte „Sieg“ zu finden, indem wir die Spalten „Sport“ und „Land“ gruppieren.

Die Funktion hat erfolgreich die Durchschnittswerte der „Gewinn“-Spaltenwerte für jede Sportart im Land ermittelt. Der gruppierte Datenrahmen kann mit der Funktion reset_index() zurückgesetzt werden, die auch einen neuen Index generiert und ihm eine geeignete Datenrahmenstruktur gibt.

Für die Zeile jedes Datenrahmens wird ein Index hinzugefügt. Um die Ergebnisse in einer ansprechenden Tabelle anzuordnen, können wir auch die Funktion pivot() verwenden.

Fazit

In diesem Tutorial haben wir besprochen, was der Mittelwert oder Durchschnitt von Zahlen ist und wie man den Mittelwert einer bestimmten Spalte (eine oder mehrere) findet, nachdem man die Spalte oder Spalten eines Datenrahmens gruppiert hat. Wir haben in diesem Artikel einige Beispiele implementiert, um Ihnen beizubringen, wie Sie den Durchschnitt einer einzelnen Integer- oder Float-Spalte bestimmen, indem Sie die Daten einer einzelnen Spalte gruppieren; wie man den Mittelwert mehrerer Spalten mit der Funktion groupby.mean() bestimmt; und auch, wie man den Mittelwert bestimmter Spalten bestimmt, indem man mehrere Spalten gruppiert.