如何将表情符号添加到AFINN库

我想将表情符号添加到AFINN库中进行情感分析,该库中已经有带有其各自极性的单词,如何添加一些表情符号,以便各个代码可以读取其极性?

afinn = dict(map(lambda (w, s): (w, int(s)), [
        ws.strip().split('\t') for ws in open(filenameAFINN) ]))
pattern_split = re.compile(r"\W+")
def sentiment(text):
    words = pattern_split.split(text.lower())
    sentiments = map(lambda word: afinn.get(word, 0), words)
    if sentiments:
        sentiment = float(sum(sentiments))/math.sqrt(len(sentiments))
    else:
        sentiment = 0
    return sentiment
if __name__ == '__main__':
    print("%s") % (text)
    print ("%6.2f") % (sentiment(text))
    if sentiment(text) < 0:
        print "================||| NEGATIVE |||================"
    elif sentiment(text) > 0:
        print "================||| POSITIVE |||================"
    else:
        print "================||| Seems NEUTRAL |||================"


库中的单词顺序是“赞”。

yucky   -2
yummy   3
zealot  -2
zealots -2
zealous 2


我应该如何在库中添加这些表情符号,并阅读其极性

(^ ^)   1
(^-^)   1
(^.^)   1

最佳答案

我是AFINN词汇表背后的人。我的Python包afinn已经具有一些表情符号。

>>> afinn = Afinn(emoticons=True)
>>> afinn.score('I saw that yesterday :)')
2.0


您可以在此处获取afinn Python软件包:

https://github.com/fnielsen/afinn

或来自Python包索引

https://pypi.python.org/pypi/afinn/

我的表情符号评分有一个文件。在GitHub上,您可以在这里找到它:

https://github.com/fnielsen/afinn/blob/master/afinn/data/AFINN-emoticon-8.txt

如果您想添加自己的表情符号,我想目前较不麻烦的方法是在复制/派生afinn版本后扩展表情符号文件。

关于python - 将表情符号添加到AFINN库以进行情感分析,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35840083/

10-09 08:40