【问题标题】:Comparing words in list with words in frequency list using pandas使用熊猫将列表中的单词与频率列表中的单词进行比较
【发布时间】:2024-01-20 11:37:01
【问题描述】:

我有 2 个包含数千个元素的频率列表,而我也有 2 个包含少量元素的较小列表。这个想法是我需要检查我的较小列表中的每个元素出现在频率列表中的次数,并比较它们,最后使用 pandas 包在表格中显示我的发现。

频率列表:

pos_freqdist = FreqDist(get_all_words(pos_train))
neg_freqdist = FreqDist(get_all_words(neg_train))

这就是 pos_freqdist 打印出来的内容(它不只是打印所有正面的词,而是计算正面评论中包含的词的频率):

FreqDist({'the': 6737, '.': 6513, ',': 6357, 'and': 3952, 'a': 3441, 'of': 3268, 'to': 2980, 'is': 2645, 'I': 2068, 'in': 1956, ...})

我还有 2 个较小的列表,其中包含很少的情感词:

my_positive_word_list
my_negative_word_list

我正在检查我已经分类为正面和负面的数千条评论中这些词的正面/负面情绪。

频率列表实际上算作字典吗?元组?我不确定。

【问题讨论】:

  • 可以使用dict(pos_freqdist) 转换成dict
  • 虽然我如何计算列表中每个元素在字典中出现的次数?

标签: python pandas loops dictionary frequency


【解决方案1】:

您可以像访问普通字典一样访问频率列表。 在内部,它具有一种字典类型的结构,可以更快地访问 这就是为什么您可以执行 pos_freqdist['the'] 并打印 6737

【讨论】:

  • 虽然我如何计算列表中每个元素在字典中出现的次数?
  • 你可以这样做: pos_freqdist[my_positive_word_list[word_index]] 这将在 pos_freqdist 中显示索引为 word_index 的单词的频率
  • 我必须一次检查一个索引吗?
  • 你确实需要一次检查一个