Python小程序—文本词频统计

1. 简介

Python小程序—文本词频统计是一个简单的程序,用于统计给定文本中各个单词出现的频率。通过对输入文本进行分词和计数操作,可以得到每个单词在文本中出现的次数,并按照频率进行排序。

2. 程序实现

2.1 准备工作

在开始编写程序之前,需要确保已经安装了Python的开发环境和相应的库。本程序使用了NLTK(Natural Language Toolkit)库来实现分词功能。

首先,安装NLTK库。可以使用以下命令在命令行中安装:

pip install nltk

然后,导入所需的库:

import nltk

from nltk.tokenize import word_tokenize

from nltk.probability import FreqDist

2.2 文本分词

程序的第一步是将输入的文本进行分词,即将文本拆分成一个个单词。可以使用NLTK库的word_tokenize函数来实现:

text = input("请输入待统计的文本:")

tokens = word_tokenize(text)

通过上述代码,可以将输入的文本text拆分成一个个单词,并存储在tokens变量中。

2.3 单词计数

接下来,需要对分词后的结果进行计数。可以使用NLTK库的FreqDist类来实现:

freq_dist = FreqDist(tokens)

上述代码会统计tokens中每个单词出现的次数,并将结果保存在freq_dist变量中。

2.4 频率排序

最后一步是对单词的频率进行排序,从高到低排列。可以使用freq_dist对象的most_common方法来实现:

sorted_freq = freq_dist.most_common()

上述代码将返回一个按照频率从高到低排序的列表sorted_freq

3. 运行程序

在完成程序的编写之后,可以通过命令行运行程序,并输入待统计的文本。程序将输出每个单词及其出现的次数。

print("单词\t\t频率")

for word, freq in sorted_freq:

print(f"{word}\t\t{freq}")

4. 示例运行

假设输入的待统计文本为:

This is a test. This is only a test.

运行程序后,将得到以下输出:

单词 频率

this 2

is 2

a 2

test 2

. 1

only 1

5. 总结

通过本文介绍的Python小程序—文本词频统计,可以方便地统计给定文本中各个单词的频率。通过NLTK库的分词和计数功能,可以实现快速且准确的统计结果。该程序可以应用于文本分析、自然语言处理等领域,为后续的文本处理工作提供基础支持。

后端开发标签