如何将TFIDF矩阵转换为包含前10个单词的完整词典

2024-04-19 13:18:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图在几篇文章中获得tf idf单词的总体分数。我遵循这里看到的手动计算tf idf的方法:https://towardsdatascience.com/natural-language-processing-feature-engineering-using-tf-idf-e8b9d00e7e76

我用的是这样的句子:[“男人出去散步”,“孩子们围坐在火旁”]

结果可在此数据框表中看到:

enter image description here

用于显示tf idf结果的词典可在此处查看:

[{'a': 0.09902102579427789, 'for': 0.09902102579427789, 'man': 0.09902102579427789, 'out': 0.09902102579427789, 'the': 0.0, 'walk': 0.09902102579427789, 'went': 0.09902102579427789}, 

{'around': 0.11552453009332421, 'children': 0.11552453009332421, 'fire': 0.11552453009332421, 'sat': 0.11552453009332421, 'the': 0.0}]

如何将TF-IDF结果字典列表按顺序转换为一个TF-IDF结果列表


Tags: the方法httpscom列表tf文章手动
1条回答
网友
1楼 · 发布于 2024-04-19 13:18:49

由于我们在这里只使用了几个句子,并且考虑到TF-IDF的性质,即总体文档中的词频与总体语料库中的词频,我们可以将结果按从大到小的顺序排列。为此,我们可以使用一种方法对问题中显示的词典进行排序

def sort_dictionary(my_dict):
    return {k: v for k, v in sorted(my_dict.items(), key=lambda item: item[1], reverse=True)}

这样做的结果是:

{'a': 0.09902102579427789, 'for': 0.09902102579427789, 'man': 0.09902102579427789, 'out': 0.09902102579427789, 'walk': 0.09902102579427789, 'went': 0.09902102579427789, 'the': 0.0}

根据文档或句子,我们将其用作输入。虽然我们在句子中有13个单词,但我们只有7个独特的单词,但如果我们有数百个单词,我们可以将搜索限制在已排序词典中的前十个,这将为我们提供前十个单词

相关问题 更多 >