首頁 > 後端開發 > Python教學 > 如何高效率統計無序列表中元素出現的頻率?

如何高效率統計無序列表中元素出現的頻率?

Susan Sarandon
發布: 2024-12-25 15:45:18
原創
719 人瀏覽過

How Can I Efficiently Count Element Frequencies in an Unordered List?

計算無序列表中的元素頻率

此程式設計困境尋求一種解決方案來計算無序列表中元素的頻率。給定一個值列表,目的是確定列表中出現的每個不同元素的計數。

使用 Collections.Counter 的 Python 實作

對於 Python 版本2.7 及更高版本中,統計元素頻率的一種便利方法是使用 collections.Counter 類別。以下是如何利用Counter 來解決問題:

import collections

a = [5, 1, 2, 2, 4, 3, 1, 2, 3, 1, 1, 5, 2]
counter = collections.Counter(a)

# Extract the frequencies in the desired order
frequencies = [counter[x] for x in sorted(counter.keys())]
登入後複製

這個方法會產生一個頻率列表[4, 4, 2, 1, 2],對應於原始資料中每個唯一元素的計數列表(a),即1 的4 個實例、2 的4 個實例、3 的2 個實例、4 的1 個實例和 2的實例5.

2.7 之前的 Python 版本的注意事項

如果使用 Python 2.6 或更早版本,下載 Counter 的外部實作是另一個途徑。這樣的實現很容易在線上獲得。

以上是如何高效率統計無序列表中元素出現的頻率?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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