首頁  >  文章  >  後端開發  >  Pandas 如何實現每年相當於 SQL 的「count(distinct)」的客戶端計數?

Pandas 如何實現每年相當於 SQL 的「count(distinct)」的客戶端計數?

DDD
DDD原創
2024-10-23 15:13:02255瀏覽

How Can Pandas Achieve Client Counting Equivalent to SQL's 'count(distinct)' for Each Year?

在Pandas 中尋找每年的唯一客戶端計數,相當於SQL 的「count(distinct)」

在SQL 中,計算每年的不同客戶端可以透過以下查詢來實現:

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

要在通常用作資料庫替代品的Pandas 中執行類似的操作,您可以使用nunique() 函數和groupby() 方法:

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

此程式碼片段以「YEARMONTH」欄位將資料框表分組,然後套用nunique() 函數來計算每年的唯一客戶端數。結果將是一個 pandas 系列,以年月為索引,以每年的唯一客戶端數量為值。

例如,如果您的表包含以下資料:

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

應用nunique() 函數將產生以下輸出:

<code class="python">YEARMONTH
201301       2
201302       3</code>

此結果表明,對於201301 ,有2 個唯一客戶端,對於201302,有3 個唯一客戶端。

以上是Pandas 如何實現每年相當於 SQL 的「count(distinct)」的客戶端計數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn