網(wǎng)站首頁(yè) 編程語(yǔ)言 正文
1.如何統(tǒng)計(jì)序列中元素出現(xiàn)的頻率并排序?
統(tǒng)計(jì)序列中元素出現(xiàn)的頻率的結(jié)果肯定是一個(gè)字典,Key 為序列中的元素而 Value 為元素出現(xiàn)的次數(shù),因此可以先創(chuàng)建一個(gè)字典,作為初始的統(tǒng)計(jì)結(jié)果,并假設(shè)初始出現(xiàn)的次數(shù)都為0。
對(duì)頻率結(jié)果字典的 Value 進(jìn)行排序
from random import randint
# 生成包含重復(fù)元素的隨機(jī)序列
nums = [randint(0, 10) for num in range(20)]
# 元素出現(xiàn)次數(shù)的統(tǒng)計(jì)最終肯定是一個(gè)字典,因此可以以元素的Key,出現(xiàn)的次數(shù)為Value
count = dict.fromkeys(nums, 0)
# 統(tǒng)計(jì)頻次
for num in nums:
count[num] += 1
# 排序方案一
# 根據(jù)Value進(jìn)行排序
_count = sorted(count.values())
# 獲取最大的次數(shù)
max = _count.pop()
keys = []
# 根據(jù)Value獲取Key
for k, v in count.items():
if v == max:
keys.append(k)
if __name__ == '__main__':
print(nums)
print(count)
print(_count)
print(max)
print(keys)
?出現(xiàn)的最大頻次為4,且頻次為4的元素是9和1
使用 Counter 對(duì)象進(jìn)行排序
# 排序方案二
from collections import Counter
_count = Counter(count)
# 中間代碼不變
if __name__ == '__main__':
print(nums)
print(count)
print(_count)
print(_count.most_common())
# 獲取出現(xiàn)頻次最高的三個(gè)元素
print(_count.most_common(3))
2.統(tǒng)計(jì)單詞次數(shù)
import re
from collections import Counter
zen = open('zen.txt').read()
# 分割所有單詞
zen = re.split('\W+', zen)
# print(zen)
_zen = Counter(zen)
print(_zen)
_zen_3 = _zen.most_common(3)
print('前三個(gè)出現(xiàn)頻次最高的詞:', _zen_3)
原文鏈接:https://juejin.cn/post/7108003465133031461
相關(guān)推薦
- 2022-10-13 python中arrow庫(kù)用法大全_python
- 2023-12-15 Linux系統(tǒng)中date命令、hwclock命令 語(yǔ)法詳解
- 2022-11-30 Git基礎(chǔ)學(xué)習(xí)之分支基本操作詳解_相關(guān)技巧
- 2022-06-10 Python語(yǔ)法學(xué)習(xí)之進(jìn)程的創(chuàng)建與常用方法詳解_python
- 2023-02-23 Go?routine使用方法講解_Golang
- 2022-12-04 如何對(duì)csv文件數(shù)據(jù)分組,并用pyecharts展示_python
- 2022-12-23 C++類中如何使用定義的類型別名_C 語(yǔ)言
- 2023-10-13 Error: cannot push because a reference that you ar
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運(yùn)行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲(chǔ)小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運(yùn)算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過(guò)濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯(cuò)誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實(shí)現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡(jiǎn)單動(dòng)態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對(duì)象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊(duì)列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支