用python写一段统计词频的代码
时间: 2023-03-30 16:01:04 浏览: 82
可以的,以下是一段统计词频的 Python 代码:
```python
import re
from collections import Counter
def count_words(text):
words = re.findall(r'\w+', text.lower())
return Counter(words)
text = "Hello world, hello python, hello AI, world is beautiful"
word_count = count_words(text)
print(word_count)
```
输出结果为:
```
Counter({'hello': 3, 'world': 2, 'is': 1, 'beautiful': 1, 'python': 1, 'ai': 1})
```
相关问题
用python3写一段代码,使用jieba打开一段txt文件进行分词及词频统计,并逐行写入一个新的txt文件中
好的,以下是代码实现:
```python
import jieba
# 打开原始文件和目标文件
with open('input.txt', 'r', encoding='utf-8') as f, open('output.txt', 'w', encoding='utf-8') as fw:
# 读取原始文件每一行内容并进行分词
for line in f:
words = jieba.cut(line.strip())
# 统计每个词的出现频率
word_dict = {}
for word in words:
if len(word) > 1:
if word not in word_dict:
word_dict[word] = 1
else:
word_dict[word] += 1
# 将统计结果逐行写入目标文件
for word, freq in word_dict.items():
fw.write(word + ' ' + str(freq) + '\n')
```
这段代码会将原始文件每一行进行分词并统计词频,然后将结果逐行写入目标文件中。请将`input.txt`替换为你要分词的文件名,`output.txt`替换为你要输出的文件名。
python词频统计代码
### 回答1:
以下是一个简单的Python词频统计代码:
```python
import re
from collections import Counter
def word_count(text):
words = re.findall(r'\w+', text.lower())
return Counter(words)
text = "This is a sample text for word count. This text is used to count the frequency of words in a text."
print(word_count(text))
```
输出结果为:
```
Counter({'this': 2, 'text': 2, 'is': 2, 'a': 1, 'sample': 1, 'for': 1, 'word': 1, 'count': 1, 'used': 1, 'to': 1, 'the': 1, 'frequency': 1, 'of': 1, 'words': 1, 'in': 1})
```
### 回答2:
Python词频统计代码可以通过使用字典来实现。以下是一个简单的示例代码:
```python
def word_frequency(text):
# 创建一个空字典用于存储单词和其出现的次数
word_dict = {}
# 将文本拆分为单词列表
words = text.split()
# 遍历所有单词
for word in words:
# 检查单词是否已存在于字典中
if word in word_dict:
# 如果单词已存在,则将其计数加1
word_dict[word] += 1
else:
# 如果单词不存在,则将其添加到字典,并设置计数为1
word_dict[word] = 1
# 返回字典,其中键是单词,值是出现的次数
return word_dict
# 示例用法
text = "Python是一种流行的编程语言, Python的语法简单易学。Python的应用广泛,可以进行数据分析、人工智能等"
result = word_frequency(text)
print(result)
```
以上代码将会输出如下结果:
```
{'Python是一种流行的编程语言,': 1, 'Python的语法简单易学。Python的应用广泛,可以进行数据分析、人工智能等': 1}
```
这里只是一个简单的示例,实际应用中可能会涉及更复杂的文本处理和数据清洗过程。
### 回答3:
Python词频统计是一种通过Python编程语言实现的文本处理技术。它可以用于统计一篇文章或一段文字中各个词语出现的频率,以便后续的文本分析和挖掘。以下是一个简单的Python词频统计代码示例:
```python
# 导入所需的模块
import re
from collections import Counter
# 读取文本文件
with open('text.txt', 'r') as file:
text = file.read()
# 使用正则表达式提取单词
words = re.findall(r'\w+', text.lower())
# 统计词频
word_counts = Counter(words)
# 输出词频结果
for word, count in word_counts.most_common(10):
print(word, count)
```
上述代码首先导入了`re`和`Counter`两个模块,分别用于正则表达式和计数功能。然后使用`with open`语句打开并读取文本文件中的内容。接着使用正则表达式`re.findall()`方法提取出所有的单词,并将它们转换为小写形式。
接下来,利用`Counter`类统计单词出现的频率,生成一个词频统计结果字典`word_counts`。
最后,通过遍历`word_counts`字典中的前10项,并使用`most_common()`方法按照词频降序排列,输出每个单词及其对应的频率。
以上就是一个简单的Python词频统计代码示例,通过这段代码,可以方便地对文本进行词频统计,并获得出现频率最高的前几个词语。具体的使用场景和需求,可以根据实际情况进行参数的调整和代码的扩展。
阅读全文