查找哈希集中每个单词在文本文档中出现的次数

Posted

技术标签:

【中文标题】查找哈希集中每个单词在文本文档中出现的次数【英文标题】:Finding the number of times each word in a hashset occurs in text document 【发布时间】:2012-06-07 19:20:33 【问题描述】:

我正在用 Java 实现朴素贝叶斯文本分类算法。

到目前为止,我所做的是,声明一个名为 Vocabulary 的哈希集,它存储给定文本文件(测试文件)中的所有唯一单词。

算法中的一个步骤是将测试文件的所有成员连接到一个文本文件中。结果证明这是一个相当大的文件,其中包含每个文件中的单词。

现在,我必须用连接的文本文件计算词汇表中每个单词的出现次数。我的第一个猜测是保留一种包含每个单词频率的数组结构。但是话又说回来,我的条目太多了。

谁能给我更好的建议?

【问题讨论】:

【参考方案1】:

使用字典 (HashMap),其中单词是键,值是出现次数。如果 HashSet 适合内存,HashMap 也应该。

【讨论】:

【参考方案2】:

您可以尝试使用 Tries,叶子节点可以存储单词的频率。

【讨论】:

以上是关于查找哈希集中每个单词在文本文档中出现的次数的主要内容,如果未能解决你的问题,请参考以下文章

201671030113 词频统计软件项目报告

labview如何读取文本文档中某一行的字符串

Java提取文本文档中的所有网址(小案例介绍正则基础知识)

如何使用 SVM 和 KNN 对文本文档进行分类

带有对象的Javascript三元运算符

使用 sklearn tf-idf 查找矢量化文本文档中的簇数