将Afinn分数添加到推文列表中

时间:2016-10-13 18:34:50

标签: python sentiment-analysis

我正在使用afinn和twitter数据开展基本的情绪分析项目。我的目标是最终得到一个数据框,显示各个推文,日期,转发,收藏和afinn分数。

这是我的代码:

import sklearn as sk
import pandas as pd
import got3
tweetCriteria = got3.manager.TweetCriteria() 
tweetCriteria.setQuerySearch("Kentucky Derby")
tweetCriteria.setSince("2016-04-01") 
tweetCriteria.setUntil("2016-05-30") 
tweetCriteria.setMaxTweets(25)

KYDerby_tweets = got3.manager.TweetManager.getTweets(tweetCriteria)

from afinn import Afinn
afinn = Afinn()

for x in KYDerby_tweets:
    afinn.score

AF = afinn.score

for x in KYDerby_tweets:
    print(x.text)
    print(x.date)
    print(x.retweets)
    print(x.favorites)
    print(AF)
    print("*"*50)

除了afinn分数外,所有内容都打印得很好。取而代之的是,我收到以下错误:>

所以列表中的第一条推文看起来像这样:

NBO:Kentucky Derby - Bourbon Barrel Edition http:// ift.tt/1pySg8M #Beer 2016-05-29 19:29:40 0 3 >

抱歉新手问题,但有人能告诉我我的代码中的afinn部分出了什么问题吗?谢谢!

1 个答案:

答案 0 :(得分:0)

Afinn.score是一种方法,而不是属性。您需要使用您想要评分的文本调用该方法。我觉得AF = afinn.score(x.text)之类的东西应该有效。当你想要得到多条推文时,你需要在循环中拥有那行代码。

"约束方法"表示AF的值是函数本身(对函数的引用),而不是函数返回的值。