0

我有一个案例研究要处理,其中有几个可用的客户评论,我必须执行以下操作

 

  1. 根据他们的评论预测他们的情绪(正面、负面、中性)

  2. 显示一个词云,不是经常出现的词,而是客户痛点和客户满意的词。

    例如,如果许多客户对手表的皮革表带感到满意,那么词云应该在积极情绪的词云中显示“皮革表带”。 

    & 如果许多客户对表盘大小抱怨/不满意,那么词云应该在负面情绪词云中显示“表盘大小”。

使用 VADER 或多或少可以实现第 1 点。

但我不确定如何达到第 2 点,因为它不是常见单词的常用词云。

你能帮我解决第二个任务吗?

4

2 回答 2

0

我想将其添加为评论,但那里还不够清楚。

好吧,我使用了以下代码:

Anaconda 命令提示符:

pip install rake-nltk

木星:

from rake_nltk import Rake
r = Rake()
myText = ''' The watch has a good dial. The good thing about the product is the 
leather strap '''
r.extract_keywords_from_text(myText)
r.get_ranked_phrases()

输出:

['leather strap', 'good thing', 'good dial', 'watch', 'product']

我认为您可以在实际文本中尝试此算法并获得排名短语。希望这会有所帮助。查看此链接了解更多详情:https://pypi.org/project/rake-nltk/#:~:text=RAKE%20short%20for%20Rapid%20Automatic,other%20words%20in%20the%20text。

于 2020-07-07T06:52:44.120 回答
0

由于没有共享代码,我将把这个问题分解为以下步骤:

  1. 你已经找到了情绪

  2. 对于具有积极情绪的句子组,从每个句子中找到最重要的词

  3. 计算这个词在正面情绪中出现的次数

  4. 根据每个单词可用的次数创建词云

  5. 对带有负面情绪的句子重复步骤 2-4

检查以下链接:https ://amueller.github.io/word_cloud/generated/wordcloud.WordCloud.html 。

如果我错过了理解您的确切问题,请告诉我。

于 2020-07-02T16:30:54.687 回答