使用R的情感分析

时间:2012-04-19 17:01:06

标签: r sentiment-analysis

是否有任何R套餐专注于情绪分析?我有一个小调查,用户可以写一个关于他们使用网络工具的经验的评论。我要求数字排名,并且可以选择包含评论。

我想知道评估评论的积极性或消极性的最佳方法是什么。我希望能够使用R。

将其与用户提供的数字排名进行比较

5 个答案:

答案 0 :(得分:26)

还有this package

sentiment: Tools for Sentiment Analysis

情绪是一个R包,其中包含用于情感分析的工具,包括用于积极性/消极性和情感分类的贝叶斯分类器。

2012年12月14日更新:已将其移至archive ...

2013年3月15日更新:基于Jeffery Breen的工作,qdap软件包具有polarity功能

答案 1 :(得分:18)

Here's我在R中的情感分析方面所做的工作。

代码绝不是精心打造或打包好的,但我posted it on Github带有基本文档。我使用了ViralHeat sentiment API,它只返回JSON,所以进行情感分析的实际函数非常简单(参见代码here)。

如果您在使用它时遇到问题,请随时与我联系。请注意,在您能够使用ViralHeat之前,您需要注册一个API密钥。如果您发现配额限制太多,我已经联系了他们,他们很乐意在我玩API的时候给我几个月的查询。

答案 2 :(得分:5)

逐步使用指南1)Viral Heat API 2)Jeffrey Breen的方法3)使用情感包,请查看以下链接:https://sites.google.com/site/miningtwitter/questions/sentiment

答案 3 :(得分:2)

我试图重组并提供一个有凝聚力的情绪分析包here。 SentR包括词干和预处理,并提供对ViralHeat API的访问,这是一个默认聚合函数以及更高级的Naive Bayes方法。

安装相对简单:

install.packages('devtools')
require('devtools')
install_github('mananshah99/sentR')
require('sentR')

一个简单的分类示例:

# Create small vectors for happy and sad words (useful in aggregate(...) function)
positive <- c('happy', 'well-off', 'good', 'happiness')
negative <- c('sad', 'bad', 'miserable', 'terrible')

# Words to test sentiment
test <- c('I am a very happy person.', 'I am a very sad person', 
'I’ve always understood happiness to be appreciation. There is no greater happiness than appreciation for what one has- both physically and in the way of relationships and ideologies. The unhappy seek that which they do not have and can not fully appreciate the things around them. I don’t expect much from life. I don’t need a high paying job, a big house or fancy cars. I simply wish to be able to live my life appreciating everything around me. 
')

# 1. Simple Summation
out <- classify.aggregate(test, positive, negative)
out

# 2. Naive Bayes
out <- classify.naivebayes(test)
out

提供以下输出:

  score
1     1
2    -1
3     2

     POS                NEG                 POS/NEG             SENT      
[1,] "9.47547003995745" "0.445453222112551" "21.2715265477714"  "positive"
[2,] "1.03127774142571" "9.47547003995745"  "0.108836578774127" "negative"
[3,] "67.1985217685598" "35.1792261323723"  "1.9101762362738"   "positive"

请随时贡献:)希望有所帮助!

答案 4 :(得分:0)

您仍然可以使用情绪套餐。按照以下脚本安装它。

您可能需要R 3.x。

require(devtools)
install_url("http://cran.r-project.org/src/contrib/Archive/sentiment/sentiment_0.2.tar.gz")
require(sentiment)
ls("package:sentiment")