该文章代码均在jupyter Notebook中运行,且已安装相关包
import jieba
import os
import csv
# 读取预定的情感词列表
def read_dict(file):
text = open(file,encoding='gbk').read()
text = text.split('\n')
words = [w for w in text if w] # 去除空的内容
return words
# 得到情感词列表
negs = read_dict(r'C:\Users\qingfeng\Desktop\Python爬虫与文本分析\Python爬虫与文本分析\Python爬虫与文本分析课件(更新)\03-初识文本分析\data\Reports\negative.txt')
poss = read_dict(r'C:\Users\qingfeng\Desktop\Python爬虫与文本分析\Python爬虫与文本分析\Python爬虫与文本分析课件(更新)\03-初识文本分析\data\Reports\positive.txt')
# print(negs,poss)
# 计算目标函数的情感词
def senti_count(text):
wordlist = jieba.lcut(text) # 将要分析的文本进行分词
pos_count = 0
for pos in poss:
pos_count = pos_count + wordlist.count(pos) # 计算要分析的文本中累计含有的正面情感词汇的数量
neg_count = 0
for neg in negs:
neg_count = neg_count + wordlist.count(neg) # 计算要分析的文本中累计含有的正面情感词汇的数量
retu