Heim >Backend-Entwicklung >Python-Tutorial >Wie kann Pandas für jedes Jahr eine Clientzählung erreichen, die der SQL-Anzahl „count(distinct)' entspricht?
Ermitteln der Anzahl eindeutiger Clients pro Jahr in Pandas, äquivalent zu SQLs „count(distinct)“
Zählen der eindeutigen Clients pro Jahr in SQL kann mit der folgenden Abfrage erreicht werden:
<code class="sql">SELECT count(distinct CLIENTCODE) FROM table GROUP BY YEARMONTH;</code>
Um eine ähnliche Operation in Pandas durchzuführen, die häufig als Datenbankersatz verwendet wird, können Sie die Funktion nunique() neben der Methode groupby() verwenden:
<code class="python">table.groupby('YEARMONTH').CLIENTCODE.nunique()</code>
Dieses Code-Snippet gruppiert die Datenrahmentabelle nach der Spalte „YEARMONTH“ und wendet dann die Funktion nunique() an, um die eindeutigen Kunden für jedes Jahr zu zählen. Das Ergebnis ist eine Pandas-Reihe mit den Jahresmonaten als Index und der Anzahl der einzelnen Kunden pro Jahr als Werten.
Zum Beispiel, wenn Ihre Tabelle die folgenden Daten enthält:
CLIENTCODE | YEARMONTH |
---|---|
1 | 201301 |
1 | 201301 |
2 | 201301 |
1 | 201302 |
2 | 201302 |
2 | 201302 |
3 | 201302 |
Die Anwendung der Funktion nunique() erzeugt die folgende Ausgabe:
<code class="python">YEARMONTH 201301 2 201302 3</code>
Dieses Ergebnis zeigt an, dass es für 201301 zwei eindeutige Clients und für 201302 drei eindeutige Clients gibt.
Das obige ist der detaillierte Inhalt vonWie kann Pandas für jedes Jahr eine Clientzählung erreichen, die der SQL-Anzahl „count(distinct)' entspricht?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!