Python实现词频统计器算法(完整源码附上)
词频统计是自然语言处理中一个非常基础和重要的工作。本文将分享一种Python实现的词频统计器算法,称之为“frequency_finder”。
算法原理:
- 将文本文件读取出来并转化成小写。
- 遍历文本,检查每个单词出现的次数。
- 储存每个单词及其出现次数到字典中。
- 对字典进行排序,按照出现次数从高到低排列。
接下来是完整的源代码:
def word_frequency(filename):
# 读取文本文件
with open(filename, 'r') as f:
text = f.read()
# 转换为小写
text = text.lower()
# 替换标点符号为空格
for char in '-.,\n':
text = text.replace(char, ' ')
# 分割成单词
words = text.split()
# 统计每个单词出现的次数
freq_dict = {}
for word in words:
if word not in freq_dict:
freq_dict[word] = 1
else:
freq_dict[word] &