Heim  >  Artikel  >  Backend-Entwicklung  >  Wie führe ich das SQL \'count(distinct)\'-Äquivalent in Pandas mit \'nunique()\' durch?

Wie führe ich das SQL \'count(distinct)\'-Äquivalent in Pandas mit \'nunique()\' durch?

Barbara Streisand
Barbara StreisandOriginal
2024-10-23 13:28:29306Durchsuche

How to Perform SQL 'count(distinct)' Equivalent in Pandas using 'nunique()'?

SQL-Abfrageäquivalent in Pandas mit „count(distinct)“

In SQL kann das Zählen unterschiedlicher Werte in einer Spalte mithilfe von erreicht werden Funktion „count(distinct)“. Um beispielsweise eindeutige Client-Codes pro Jahr und Monat zu zählen:

<code class="sql">SELECT count(distinct CLIENTCODE) FROM table GROUP BY YEARMONTH;</code>

Ein ähnlicher Vorgang kann in Pandas mithilfe der Methode „nunique()“ für einen gruppierten DataFrame ausgeführt werden. Indem wir die Daten nach der Spalte „YEARMONTH“ gruppieren und dann „nunique()“ in der Spalte „CLIENTCODE“ aufrufen, können wir die Anzahl der eindeutigen Kunden pro Jahr und Monat ermitteln.

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

Beispiel :

Betrachten Sie eine DataFrame-'Tabelle' mit den folgenden Spalten:

CLIENTCODE YEARMONTH
1 201301
1 201301
2 201301
1 201302
2 201302
2 201302
3 201302

Die Anwendung des oben genannten Codes ergibt:

<code class="python">Out[3]: 
YEARMONTH
201301       2
201302       3</code>

Diese Ausgabe entspricht den Erwartungen Ergebnis, das die Anzahl der einzelnen Kunden für jeden Jahresmonat anzeigt.

Das obige ist der detaillierte Inhalt vonWie führe ich das SQL \'count(distinct)\'-Äquivalent in Pandas mit \'nunique()\' durch?. 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