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>
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>
Ausgabe:
YEARMONTH 201301 2 201302 3
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!