【NLP】词频统计的3中方法,时间复杂度,空间复杂度对比。

#第一种办法
import re 
from collections import Counter

def get_max_value_vl(text):
	text = text.lower()
	result = re.findall('[a-zA-Z0-9]',text) #去掉列表中的符号
	count = Counter(result)                 #词频统计
	count_list = list(count.values())
	max_value = max(count_list)
	max_list = []
	for k,v in count.items():
		if v == max_value:
			max_list.append(k)
	max_list = sorted(max_list)
	return max_list[0]

#第二种方法
from collections import Counter

def get_max_value_v2(text):
	count = Counter([x for x in text.lower() if x.isalpha()])
	m = max(count.values())
	return sorted([x for (x,y) in count.items() if y == m])[0]


#第三种方法
import string

def get_max_value_v3(text):
	text = text.lower()
	return max(string.ascii_lowercase,key= text.count)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值