将给定的一个英文word文档en.txt进行分词,并统计每个单词的词频
时间: 2024-09-24 14:25:23 浏览: 67
基于python的将pdf转为txt然后进行分词,并进行词频统计
对英文文本进行分词并统计词频通常涉及以下几个步骤:
1. **读取文件**:首先你需要打开并读取`en.txt`文件的内容。
2. **分词**:对于英文,不需要像中文那样逐字拆词,因为英文单词是由空格、标点等分开的。你可以直接按空格切分得到单词列表。
3. **去停用词**:英语中有许多常用词汇如“the”, “is”等,在统计词频时不包含它们能提高数据的有效性。你可以查阅一些英文停用词列表,比如NLTK库中的停用词。
4. **计数**:遍历单词列表,将每个单词作为键,每出现一次就增加对应的值,存储在字典中。
5. **排序和输出**:最后,按照词频降序对字典进行排序,并输出结果。
下面是一个基本的Python示例:
```python
import re
from collections import Counter
def count_words(file_name):
with open(file_name, 'r', encoding='utf-8') as file:
text = file.read()
# 使用正则表达式去除换行符和非字母字符
words = re.findall(r'\b\w+\b', text.lower())
# 去除停用词,这里仅举例子,实际应用中需要一个完整的停用词列表
stop_words = ['the', 'is', 'and'] # 更多停用词...
words = [word for word in words if word not in stop_words]
word_counts = Counter(words)
return word_counts.most_common()
word_counts = count_words('en.txt')
for word, freq in word_counts:
print(f"'{word}': {freq}")
阅读全文