So zählen sie gruppensichtungen bei pandas


Oftmals könnte es für Sie von Interesse sein, die Anzahl der Beobachtungen pro Gruppe in einem Pandas-DataFrame zu zählen.

Glücklicherweise ist dies mit den Funktionen groupby() und size() mit der folgenden Syntax einfach zu bewerkstelligen:

 df. groupby (' column_name '). size ()

In diesem Tutorial werden mehrere Beispiele für die praktische Verwendung dieser Funktion anhand des folgenden Datenrahmens erläutert:

 import numpy as np
import pandas as pd

#create pandas DataFrame
df = pd. DataFrame ({'team': ['A', 'A', 'B', 'B', 'B', 'C', 'C'],
                   'division':['E', 'W', 'E', 'E', 'W', 'W', 'E'],
                   'rebounds': [11, 8, 7, 6, 6, 5, 12]})

#display DataFrame
print (df)

  team division rebounds
0 AE 11
1 AW 8
2 BE 7
3 BE 6
4 BW 6
5 CW 5
6 CE 12

Beispiel 1: Zählen nach einer Variablen

Der folgende Code zeigt, wie die Gesamtzahl der Beobachtungen pro Team gezählt wird:

 #count total observations by variable 'team'
df. groupby (' team '). size ()

team
At 2
B 3
C 2
dtype: int64

Aus dem Ergebnis können wir Folgendes erkennen:

  • Team A hat 2 Beobachtungen
  • Team B hat 3 Beobachtungen
  • Team C hat 2 Beobachtungen

Beachten Sie, dass der vorangehende Code eine Serie erzeugt. In den meisten Fällen möchten wir mit einem DataFrame arbeiten, daher können wir stattdessen die Funktion reset_index() verwenden, um einen DataFrame zu erstellen:

 df. groupby (' team '). size (). reset_index (name=' obs ')

        team obs
0 to 2
1 B 3
2 C 2

Beispiel 2: Zählen und Sortieren nach einer Variablen

Wir können auch die Funktion sort_values() verwenden, um die Anzahl der Gruppen zu sortieren.

Wir können „ascending=False“ angeben, um die Anzahl der Gruppen vom größten zum kleinsten zu sortieren, oder „ascending=True“ , um vom kleinsten zum größten zu sortieren:

 df. groupby (' team '). size (). reset_index (name=' obs '). sort_values ([' obs '], ascending= True )

        team obs
0 to 2
2 C 2
1 B 3

Beispiel 3: Zählen nach mehreren Variablen

Wir können auch die Anzahl der Beobachtungen zählen, gruppiert nach mehreren Variablen in einem Pandas-DataFrame:

 #count observations grouped by team and division
df. groupby ([' team ',' division ']). size (). reset_index (name=' obs ')

        team division obs
0 A E 1
1 A W 1
2 B E 2
3 B W 1
4 C E 1
5 C W 1

Aus dem Ergebnis können wir Folgendes erkennen:

  • 1 Beobachtung gehört Team A und Division E
  • 1 Beobachtung gehört Team A und Division W
  • 2 Beobachtungen gehören zu Team B und Division E
  • 1 Beobachtung gehört der Mannschaft B und der Division W
  • 1 Beobachtung gehört Team C und Division E
  • 1 Beobachtung gehört der Mannschaft C und der Division W

Zusätzliche Ressourcen

So berechnen Sie die Summe der Spalten in Pandas
So berechnen Sie den Durchschnitt der Spalten in Pandas
So ermitteln Sie den Maximalwert von Spalten in Pandas

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert