p ython文本词频统计
时间: 2024-01-17 09:02:39 浏览: 32
可以使用Python中的collections模块中的Counter类来进行文本词频统计。
以下是一个简单的示例代码:
```python
from collections import Counter
# 读取文本文件
with open("text.txt", "r", encoding="utf-8") as f:
text = f.read()
# 将文本分割成单词
words = text.split()
# 统计词频
word_count = Counter(words)
# 输出结果
print(word_count.most_common())
```
在这个示例中,我们首先使用`open()`函数读取一个文本文件,并将其保存在`text`变量中。然后,我们使用`split()`方法将文本分割成单词,并将其保存在`words`变量中。接下来,我们使用`Counter()`函数来统计每个单词出现的次数,并将结果保存在`word_count`变量中。最后,我们使用`most_common()`方法来输出按照出现次数从高到低排列的单词列表。
需要注意的是,这个示例代码中的文本文件应该是以空格或换行符为分隔符的,如果文本文件中的单词是以其它符号或标点符号分隔的,需要在`split()`方法中指定相应的分隔符。
相关问题
p ython文本词频统计collections
在Python中使用collections模块可以很方便地对文本进行词频统计。下面是一个简单的例子:
```python
from collections import Counter
# 读取文本文件
with open('text.txt', 'r') as f:
text = f.read()
# 分词
words = text.split()
# 统计词频
word_counts = Counter(words)
# 输出前10个出现频率最高的词及其频率
for word, count in word_counts.most_common(10):
print(word, count)
```
在这个例子中,我们使用`Counter`类统计了文本中每个词出现的次数,并使用`most_common`方法输出了出现频率最高的前10个词及其频率。需要注意的是,我们在分词时使用了`split`方法,这只是一个简单的例子,实际应用中需要根据具体情况选择更复杂的分词方法。
p ython中文词频统计
要进行Python中文词频统计,可以使用jieba库来进行中文分词,然后使用collections库来统计词频。
首先需要安装jieba库,可以使用以下命令:
```
pip install jieba
```
然后可以编写如下的代码来进行中文词频统计:
```python
import jieba
from collections import Counter
# 读取文本文件
with open('text.txt', 'r', encoding='utf-8') as f:
text = f.read()
# 进行中文分词
words = jieba.cut(text)
# 统计词频并输出前10个词
word_counts = Counter(words)
for word, count in word_counts.most_common(10):
print(word, count)
```
其中,'text.txt'是待统计的文本文件名,可以根据实际情况进行修改。运行上述代码后,会输出前10个出现频率最高的词及其出现次数。
需要注意的是,中文分词可能会受到一些特殊的词语和语法结构的影响,因此对于不同的文本,可能需要进行一定的调整和优化才能得到较为准确的结果。