Heim  >  Artikel  >  Backend-Entwicklung  >  Wie zähle ich die Häufigkeit von Zeilen basierend auf mehreren Spalten in einem Pandas DataFrame?

Wie zähle ich die Häufigkeit von Zeilen basierend auf mehreren Spalten in einem Pandas DataFrame?

Susan Sarandon
Susan SarandonOriginal
2024-10-25 02:33:02172Durchsuche

How to Count the Frequency of Rows Based on Multiple Columns in a Pandas DataFrame?

Erhalten Sie eine Häufigkeitszählung basierend auf mehreren Datenrahmenspalten

Um die Häufigkeit von Zeilen zu ermitteln, die mehrmals in einem Datenrahmen erscheinen, können Sie Folgendes verwenden: die Groupby-Operation mit Größen- oder Zählfunktionen. Lassen Sie uns dies anhand eines Beispieldatenrahmens demonstrieren:

import pandas as pd

# Sample dataframe
data = {'Group': ['Short', 'Short', 'Moderate', 'Moderate', 'Tall'], 'Size': ['Small', 'Small', 'Medium', 'Small', 'Large']}
df = pd.DataFrame(data)

Option 1: Groupby und Size verwenden

dfg = df.groupby(['Group', 'Size']).size()
print(dfg)

Ausgabe:

Group     Size
Moderate  Medium    1
          Small     1
Short     Small     2
Tall      Large     1
dtype: int64

Option 2: Groupby, Size und reset_index verwenden

dfg = df.groupby(['Group', 'Size']).size().reset_index(name='Time')
print(dfg)

Ausgabe:

      Group    Size  Time
0  Moderate  Medium     1
1  Moderate   Small     1
2     Short   Small     2
3      Tall   Large     1

Option 3: Groupby, Size und as_index verwenden

dfg = df.groupby(['Group', 'Size'], as_index=False).size()
print(dfg)

Ausgabe:

      Group    Size  Time
0  Moderate  Medium     1
1  Moderate   Small     1
2     Short   Small     2
3      Tall   Large     1

Jede Option gibt einen Datenrahmen mit Gruppen- und Größenspalten zurück, der die spezifischen Zeilenkombinationen angibt, die im ursprünglichen Datenrahmen angezeigt werden. Eine zusätzliche Zeitspalte zeigt die Häufigkeitsanzahl für jede Kombination.

Das obige ist der detaillierte Inhalt vonWie zähle ich die Häufigkeit von Zeilen basierend auf mehreren Spalten in einem Pandas DataFrame?. 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