2012-04-19 33 views
28

Duygu analizine odaklanmış R paketleri var mı? Kullanıcıların web aracı kullanma deneyimleri hakkında yorum yazabilecekleri küçük bir anketim var. Sayısal sıralama istemek ve bir yorum ekleme seçeneği var.Duygu analizi kullanılarak analiz R

Yorumun pozitivitesini veya olumsuzluğunu değerlendirmenin en iyi yolunun ne olduğunu merak ediyorum. Ben R.

+2

Jeffery Breen'in çalışmalarına buradan göz atın: http://www.slideshare.net/jeffreybreen/r-by-örnek-madencilik-twitter-için – mweylandt

+0

@mweylandt, bir Jeffrey kendim olarak, "r-e-y." Ama basit, temiz bir yöntem gibi görünüyor. –

+0

Jeffrey Breen, benim gibi Metin Madenciliğine yeni başlayanlara her şeyden önce mükemmel bir rehber sunuyor. Paras tarafından paylaşılan bağlantıyı ziyaret etmeyi teşvik ediyorum. Bu bağlantıdan konuyla ilgili uzman Profesör Bing Liu web sitesine gidebilirsiniz: [Görüş Madenciliği, Duygu Analizi ve Görüş Spam Algılama] [1] [1]: http: //www.cs.uic. edu/~ liub/FBS/sentiment-analysis.html Saygılarımızla, Çubuk – rodobastias

cevap

26

Ve this package vardır:

sentiment: Tools for Sentiment Analysis

duyguları pozitiflik/negatiflik ve duygu sınıflandırması için Bayesian sınıflandırıcılarla dahil duyguları analizi için araçlar ile bir R paketidir.

Güncelleme 14 Aralık 2012: Bu ... archive için kaldırılmıştır

Güncelleme 15 Mar 2013: qdap paket adım adım kılavuz için Jeffery Breen çalışmaları

+1

Bu paket artık R 3.3 –

18

Here's Ben R.

kodudur

yılında duyguları analizine yaptık çalışması sonuçlarını kullanarak kullanıcı sağlar sayısal sıralamada karşılaştırmak mümkün olmak istiyorum, hiçbir şekilde, cilalanmış veya iyi paketlenmiş, ancak temel belgelerle posted it on Github. JSON'u döndüren ViralHeat sentiment API'u kullandım, bu yüzden duygu analizi yapmak için asıl işlev oldukça önemsiz (bkz. Kod here).

Sorun yaşıyorsanız, benimle iletişime geçmekten çekinmeyin. Ayrıca, kullanabilmeniz için önce ViralHeat ile bir API anahtarına kaydolmanız gerektiğini unutmayın. Kotaları çok kısıtlayıcı buluyorsanız, benimle temasa geçtim ve API ile oynadığım sırada birkaç ay için bana daha fazla sorgu vermekten mutluluk duyuyorlardı.

0

Şu anda duygu paketini kullanabilirsiniz. Aşağıdaki komut dosyasını takip ederek yükleyin.

R 3.x dosyasına ihtiyacınız olabilir.

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

için kullanılabilir paket paketi, R 3.0.2 –

+0

tarafından da desteklenmeyen rstem paketine bağlıdır Evet, kaynak site: https://sites.google.com/site/miningtwitter/home uyardı: twitter API'larındaki değişiklikler nedeniyle, bu google sitesindeki kod artık desteklenmiyor ... içerik – Matt

2

Ben yeniden düzenlemek ve uyumlu bir duygu analizi paketi here sağlamaya çalışıyoruz. SentR, kelime köklendirme ve ön işlemeyi içerir ve daha gelişmiş bir Naive Bayes yönteminin yanı sıra varsayılan bir toplama işlevi olan ViralHeat API'ye erişim sağlar.

Yükleme nispeten basittir:

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

Ve basit bir sınıflandırma örneği: Aşağıdaki çıktıyı sağlamaktadır

# 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" 

katkıda bulunmak çekinmeyin :) Umut bu yardımcı olur!

+0

Merhaba Manan, çözümünüzü beğendim. Denedim ve daha fazlasını deneyeceğim. Başkalarının kullanması için kamuya açık yaptığınız herhangi bir proje gibi bir kullanım durumunuz var mı? Thx – seakyourpeak

+0

@seakyourpeak Yorum için teşekkürler! Örnek bir Twitter duygu ayıklama deposu (github.com/manans99) üzerinde çalışıyorum, ancak şimdilik her bir işlev için belgeleme örnek kullanım durumu içerir. Başka sorularınız varsa beni PM için çekinmeyin. – manan

+0

@manan Şu anda Facebook gönderi verileri üzerinde çalışıyorum. Gönderiyi çıkarabildim ve bir wordcloud yapabildim. Listenin negatif ve pozitif için en yaygın kelimeyi kullanmanın iyi bir fikir olduğunu düşünüyorsanız merak ediyordum. Örn: eğer wordcloud'umda, kötü, büyük, sevgi, mutlu, üzgün, uçak, araba, ulaşım gibi bir şey bulursam .... Büyük, sevgiyi, pozitif sınıflandırıcı ve mutsuz, negatif kadar kötü olarak kullanırdım. ? –