我试图对twitter数据做一些情绪分析 . 我有一个字典(afinn_list),如下所示
-
好5
-
坏-5
-
太棒了6
我已经能够生成一个包含每个匹配单词位置的字符变量 . 现在我想生成一个得分变量,它将包含这些匹配的相应分数 . 我很难想出一个for循环逻辑 .
class(afinn_list)
[1]“data.frame”
vPosMatches < - match(words,afinn_list $ word)vPosMatches
[1] NA NA NA NA 1104 NA NA NA NA NA NA NA NA NA NA NA 1836 NA
如果这个问题太天真,我很抱歉 . 我只是想用R学习情绪分析
1 回答
情绪分析是一项复杂的任务 . 假设你已经从twitter清理你的数据并将其存储为每个单元格中的1个单词,我想你现在缺少的是在
words
中用你的得分"dictionary"afinn_list
对你清理过的数据进行评分 .假设你的单词是afinn_list,就像这样
和你的mock_data(从twitter清理数据)是
您将在2个数据框之间进行合并 . 在SQL世界中,它将是一个左外连接 . 在R中,它使用函数
merge
实现并提供您希望加入的列和all.x=True
因此,您的代码将如下所示
我希望你回答这个问题 .
干杯