Heim > Backend-Entwicklung > Python-Tutorial > Wie zähle ich unterschiedliche Werte nach Gruppen in Pandas?

Wie zähle ich unterschiedliche Werte nach Gruppen in Pandas?

Linda Hamilton
Freigeben: 2024-10-23 13:23:01
Original
687 Leute haben es durchsucht

How to Count Distinct Values by Group in Pandas?

Pandas-Äquivalent: Eindeutige Zählung nach Gruppe

Bei der Verwendung von Pandas als Datenbankalternative ist es häufig erforderlich, komplexe Operationen wie die eindeutige Zählung nach durchzuführen Gruppe. In diesem Fall möchten wir die Anzahl der einzelnen Clients pro Jahr und Monat zählen.

In SQL kann dies mithilfe der Aggregatfunktion count(distinct) erreicht werden. Pandas bietet jedoch eine etwas andere Syntax für diesen Vorgang.

Um die unterschiedlichen Clients pro Jahr und Monat in Pandas zu zählen, können wir den folgenden Code verwenden:

<code class="python">table.groupby('YEARMONTH').CLIENTCODE.nunique()</code>
Nach dem Login kopieren

Die Funktion „groupby()“. Teilt den DataFrame basierend auf der angegebenen Spalte (in diesem Fall YEARMONTH) in Gruppen auf. Die Funktion nunique() zählt dann die Anzahl der eindeutigen Werte innerhalb jeder Gruppe.

Hier ist ein Beispiel zur Veranschaulichung:

<code class="python">import pandas as pd

# Create a DataFrame with sample data
data = {
    'YEARMONTH': ['201301', '201301', '201301', '201302', '201302', '201302', '201302'],
    'CLIENTCODE': [1, 1, 2, 1, 2, 2, 3]
}
table = pd.DataFrame(data)

# Count distinct clients per year month
result = table.groupby('YEARMONTH').CLIENTCODE.nunique()

print(result)</code>
Nach dem Login kopieren

Ausgabe:

YEARMONTH
201301    2
201302    3
Nach dem Login kopieren

Wie Sie Sie können sehen, dass das Ergebnis mit der erwarteten Ausgabe der SQL-Abfrage übereinstimmt.

Das obige ist der detaillierte Inhalt vonWie zähle ich unterschiedliche Werte nach Gruppen in Pandas?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage