gpt4 book ai didi

java - 计算java中多个文件/文档中的词频

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:20:07 24 4
gpt4 key购买 nike

我想计算 java 中多个文件/文档的词频。

例如

a1 = {aaa,aaa,aaa,bbb}
a2 = {aaa, aaa, hhh}
a3 = {aaa, hhh, bbb, bbb}

所以,我想计算每个文件的词频:

for a1 file {aaa = 3, bbb = 1}
for a2 file {aaa = 2, hhh = 1}
for a3 file {aaa = 1, hhh = 1, bbb =2}

我有一个方法可以从 file 中读取单词然后,存储 <wordname, worcount>LinkedHashMap .尽管如此,它会计算所有文件中特定单词的频率,但我想分别计算每个文件的单词频率。

有人有解决办法吗?


然后,我写了这个:

Set mapset = fileToWordCount.keySet();           

for(Object filenameFromMap: mapset){
System.out.println("FILENAME::"+filenameFromMap);
}

但是,它不打印任何东西。

最佳答案

您可以创建另一个 Map,将文件名映射到包含字数的 LinkedHashMap。所以你会得到这样的东西:

Map<String, LinkedHashMap<String, Integer>> fileToWordCount = new HashMap<String, LinkedHashMap<String, Integer>();

然后,对于每个文件,您将像往常一样构建词频并以这种方式将值添加到上面的 map 中:

fileToWordCount.put(file.getPath(), wordCountMap);

关于java - 计算java中多个文件/文档中的词频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13493218/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com