Heim  >  Artikel  >  Backend-Entwicklung  >  Wie gruppiere ich Pandas DataFrame nach zwei Spalten und zähle Beobachtungen?

Wie gruppiere ich Pandas DataFrame nach zwei Spalten und zähle Beobachtungen?

DDD
DDDOriginal
2024-10-23 10:56:12584Durchsuche

How to Group Pandas DataFrame by Two Columns and Count Observations?

Pandas DataFrame: Gruppieren nach zwei Spalten und Zählen von Beobachtungen

Bei der Datenanalyse ist es oft notwendig, Daten basierend auf bestimmten Spalten und zu gruppieren Zählen Sie die Anzahl der Beobachtungen innerhalb jeder Gruppe. Um dies mit Pandas DataFrame zu erreichen, gehen wir auf das folgende Problem ein.

Problemstellung:

Betrachten Sie einen Pandas DataFrame mit mehreren Spalten. Das Ziel besteht darin, den DataFrame basierend auf zwei Spalten, nämlich „col5“ und „col2“, zu gruppieren und die Anzahl der eindeutigen Zeilen innerhalb jeder Gruppe zu zählen. Darüber hinaus möchten wir die größte Anzahl für jeden „col2“-Wert ermitteln.

Lösung:

Um den DataFrame zu gruppieren und die Zeilen in jeder Gruppe zu zählen, können wir Verwenden Sie die Pandas-Funktion groupby(). Hier ist eine Schritt-für-Schritt-Anleitung:

Schritt 1: Gruppieren Sie den DataFrame

Gruppieren Sie den DataFrame nach den Spalten „col5“ und „col2“:

<code class="python">grouped_df = df.groupby(['col5', 'col2'])</code>

Schritt 2: Zeilen zählen

Wenden Sie die Funktion size() auf den gruppierten DataFrame an, um die Anzahl der eindeutigen Zeilen in jeder Gruppe zu zählen:

<code class="python">counts = grouped_df.size()</code>

Schritt 3: Maximale Anzahl für jeden „col2“ ermitteln

Um die größte Anzahl für jeden „col2“-Wert zu ermitteln, können wir die Anzahlen im DataFrame weiter nach „col2“ und dann gruppieren Wenden Sie die Funktion max() an:

<code class="python">max_counts = counts.groupby(level=1).max()</code>

Ausgabe:

Die obigen Schritte liefern uns zwei separate DataFrames:

  • counts: Zeigt die Anzahl der eindeutigen Zeilen für jede Gruppe an.
  • max_counts: Zeigt die maximale Anzahl für jeden „col2“-Wert an.

Das obige ist der detaillierte Inhalt vonWie gruppiere ich Pandas DataFrame nach zwei Spalten und zähle Beobachtungen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn