如何将表情符号添加到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
答案 0 :(得分:1)
我是AFINN单词列表背后的人。我的名为afinn
的Python包已经有一些表情符号。
>>> 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
版本后扩展表情符号文件。