资源简介
根据文本进行分词分句,根据处理过后的数据对词和句子进行评分
代码片段和文件信息
import jieba
import numpy as np
#打开词典文件,返回列表
def open_dict(Dict = ‘hahah‘ path=r‘/Users/apple888/PycharmProjects/Textming/Sent_Dict/Hownet/‘):
path = path + ‘%s.txt‘ % Dict
dictionary = open(path ‘r‘ encoding=‘utf-8‘)
dict = []
for word in dictionary:
word = word.strip(‘\n‘)
dict.append(word)
return dict
def judgeodd(num):
if (num % 2) == 0:
return ‘even‘
else:
return ‘odd‘
#注意,这里你要修改path路径。
deny_word = open_dict(Dict = ‘否定词‘ path= r‘/Users/apple888/PycharmProjects/Textming/‘)
posdict = open_dict(Dict = ‘positive‘ path= r‘/Users/apple888/PycharmProjects/Textming/‘)
negdict = open_dict(Dict = ‘negative‘ path= r‘/Users/apple888/PycharmProjects/Textming/‘)
degree_word = open_dict(Dict = ‘程度级别词语‘ path= r‘/Users/apple888/PycharmProjects/Textming/‘)
mostdict = degree_word[degree_word.index(‘extreme‘)+1 : degree_word.index(‘very‘)]#权重4,即在情感词前乘以4
verydict = degree_word[degree_word.index(‘very‘)+1 : degree_word.index(‘more‘)]#权重3
moredict = degree_word[degree_word.index(‘more‘)+1 : degree_word.index(‘ish‘)]#权重2
ishdict = degree_word[degree_word.index(‘ish‘)+1 : degree_word.index(‘last‘)]#权重0.5
def sentiment_score_list(dataset):
seg_sentence = dataset.split(‘。‘)
count1 = []
count2 = []
for sen in seg_sentence: #循环遍历每一个评论
segtmp = jieba.lcut(sen cut_all=False) #把句子进行分词,以列表的形式返回
i = 0 #记录扫描到的词的位置
a = 0 #记录情感词的位置
poscount = 0 #积极词的第一次分值
poscount2 = 0 #积极词反转后的分值
poscount3 = 0 #积极词的最后分值(包括叹号的分值)
negcount = 0
negcount2 = 0
negcount3 = 0
for word in segtmp:
if word in posdict: # 判断词语是否是情感词
poscount += 1
c = 0
for w in segtmp[a:i]: # 扫描情感词前的程度词
if w in mostdict:
poscount *= 4.0
elif w in verydict:
poscount *= 3.0
elif w in moredict:
poscount *= 2.0
elif w in ishdict:
poscount *= 0.5
elif w in deny_word:
c += 1
if judgeodd(c) == ‘odd‘: # 扫描情感词前的否定词数
poscount *= -1.0
poscount2 += poscount
poscount = 0
poscount3 = poscount + poscount2 + poscount3
poscount2 = 0
else:
poscount3 = poscount + poscount2 + poscount3
poscount = 0
a = i + 1 # 情感词的位置变化
elif word in negdict: # 消极情感的分析,与上面一致
negcount += 1
d = 0
for w in segtmp[a:i]:
if w in mostdict:
negcount *= 4.0
elif w in verydict:
negcount *= 3.0
elif w in moredict:
negcount *= 2.0
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2016-10-26 19:54 Textming\
文件 6148 2016-10-26 19:06 Textming\.DS_Store
目录 0 2016-10-26 19:54 __MACOSX\
目录 0 2016-10-26 19:54 __MACOSX\Textming\
文件 120 2016-10-26 19:06 __MACOSX\Textming\._.DS_Store
目录 0 2016-10-26 19:06 Textming\.idea\
文件 253 2016-10-26 00:06 Textming\.idea\misc.xm
文件 268 2016-10-26 00:06 Textming\.idea\modules.xm
文件 398 2016-10-26 00:12 Textming\.idea\Textming.iml
文件 21241 2016-10-26 19:06 Textming\.idea\workspace.xm
文件 119538 2016-10-26 16:37 Textming\negative.txt
文件 171 2016-10-26 16:37 __MACOSX\Textming\._negative.txt
文件 68600 2016-10-26 16:12 Textming\positive.txt
文件 171 2016-10-26 16:12 __MACOSX\Textming\._positive.txt
文件 5909 2016-10-26 19:54 Textming\senti_python.py
文件 74 2016-10-26 18:03 Textming\鍚﹀畾璇?txt
文件 171 2016-10-26 18:03 __MACOSX\Textming\._鍚﹀畾璇?txt
文件 1541 2016-10-26 17:10 Textming\绋嬪害绾у埆璇嶈.txt
文件 171 2016-10-26 17:10 __MACOSX\Textming\._绋嬪害绾у埆璇嶈.txt
- 上一篇:数据挖掘课程报告
- 下一篇:socket 客户端 通信 上位机 部分
相关资源
- 朴素贝叶斯分类模型完整代码
- 台湾大学NTUSD,知网情感分析用词语集
- 最全的情感分析词库
- 情感分析-情感词典
- AI Challenger用户评论情感分析
- 微博情感分析论文7篇
- AI Challenger 细粒度用户评论情感分析
- 四个情感词典汇总.zip
- 台湾大学中文情感极性词典
- NLPCC2014 微博情感分析样例数据
- 来自于NLPCC2013,解析成txt文件 不均衡
- 新浪微博,情感分析标记语料共12万条
- 情感分析数据集
- 情感分析评论训练数据
- 中文情感分析 语料数据 酒店评论
- 谭松波-酒店评论语料-utf8gb 两种格式
- Sentiment Analysis and Opinion Mining_BingLiu
- 基于 SVM 的中文微博情感分析的研究
- 中文情感分析语料库
- 情感分析数据集正面10000条,负面50
- NLPCC2014情感分类语料集+已经标注好
- 贝叶斯模型LDA贝叶斯算法实现的电商
- 基于社交网络的情绪化分析
- 情感分析语料-谭松波酒店评论语料
- BosonNLP数据的情感词典
- NLPCC2013评估任务_中文微博观点要素抽
- NLPCC2014评估任务2_基于深度学习的情感
- 微博情感分析,文本分类,毕业设计
- 中文酒店情感分析语料,标注了打分
- 基于SVM中文情感分析
评论
共有 条评论