首頁 > 後端開發 > Python教學 > 如何有效地將 Pandas 列分箱並對每個分箱中的值進行計數?

如何有效地將 Pandas 列分箱並對每個分箱中的值進行計數?

Susan Sarandon
發布: 2024-12-09 19:17:17
原創
358 人瀏覽過

How to Efficiently Bin a Pandas Column and Count Values in Each Bin?

將列與 Pandas 合併

在資料分析中,將資料分入類別以簡化其表示和分析通常很有用。這是處理數字資料時的常用技術,例如處理百分比時。

假設我們有一個名為「percentage」的資料框列,其中包含數值,如下所示:

df['percentage'].head()
46.5
44.2
100.0
42.12
登入後複製

要對此列進行分箱並取得每個分箱的值計數,我們可以使用pd.cut 函數。有兩種方法可以實現此目的:

將pd.cut 與value_counts 結合使用:

bins = [0, 1, 5, 10, 25, 50, 100]
df['binned'] = pd.cut(df['percentage'], bins)
print(df.groupby(df['binned']).size())
登入後複製

使用np.search🎜>

df['binned'] = np.searchsorted(bins, df['percentage'].values)
print(df.groupby(df['binned']).size())
登入後複製
使用np.searchsorted 和groupby:

percentage
(0, 1]       0
(1, 5]       0
(5, 10]      0
(10, 25]     0
(25, 50]     3
(50, 100]    1
dtype: int64
登入後複製

兩種方法都會傳回以下內容輸出:

此輸出表示bin (0, 1]、(1, 5]、(5, 10] 和(10 , 25]) 中沒有值。中。

以上是如何有效地將 Pandas 列分箱並對每個分箱中的值進行計數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板