首頁  >  文章  >  後端開發  >  將 SQL 的 COUNT(DISTINCT) 轉換為 Pandas:如何使用 nunique() 方法?

將 SQL 的 COUNT(DISTINCT) 轉換為 Pandas:如何使用 nunique() 方法?

Barbara Streisand
Barbara Streisand原創
2024-10-23 14:14:02451瀏覽

Translating SQL's COUNT(DISTINCT) to Pandas: How to Use nunique() Method?

將SQL 的COUNT(DISTINCT) 轉換為Pandas 等效項

在資料作業領域,Pandas 已成為管理表格的有力工具數據。在處理 Oracle 和 SQL Server 等不同資料來源時,使用者可能會遇到將 SQL 查詢轉換為高效 Pandas 操作的挑戰。一項常見任務涉及計算不同值的數量,該任務需要與 SQL 的 COUNT(DISTINCT) 函數「等效」。

為了在 Pandas 中實現這一目標,讓我們開始探索包含列的表代表 YEARMONTH、CLIENTCODE 和各種其他屬性。在 SQL 中,可以使用以下查詢來完成每年不同的客戶端計數:

SELECT count(distinct CLIENTCODE) FROM table GROUP BY YEARMONTH;

此查詢產生的結果顯示每年的不同客戶端計數。我們如何在 Pandas 中複製此功能?

解決方案在於利用 nunique() 方法:

table.groupby('YEARMONTH').CLIENTCODE.nunique()

此表達式按 YEARMONTH 列對資料進行分組並應用 nunique()方法到每個組內的 CLIENTCODE 系列。結果是一個 DataFrame,其中列出了 YEARMONTH 值以及每年的不同客戶端數量。

為了說明這一點,請考慮一個名為table 的範例DataFrame:

   CLIENTCODE  YEARMONTH
0           1     201301
1           1     201301
2           2     201301
3           1     201302
4           2     201302
5           2     201302
6           3     201302

應用nunique( ) 方法產生:

YEARMONTH
201301       2
201302       3

因此,Pandas 的nunique() 方法提供了與SQL 的COUNT(DISTINCT) 等效的功能,用於有效計算指定列中的不同值。

以上是將 SQL 的 COUNT(DISTINCT) 轉換為 Pandas:如何使用 nunique() 方法?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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