资源简介
python情感分析代码 源码数据源都有 功能比较全 可以下载参考
代码片段和文件信息
# -*- coding: utf-8 -*-
“““
Created on Sat Feb 2 00:07:04 2019
@author: Administrator
“““
import os
os.chdir(‘d:\\pythonpath\\LDA‘)
##################情感分析
from collections import defaultdict
import re
import jieba
import codecs
import sys
##中文分词
def seg2word(comment_txt):
#调用jieba进行分词
segword1=jieba.cut(comment_txt)
#分词后的结果存为list类型
segword2=[]
for k in segword1:
segword2.append(k)
#调用reaLines读取停用词
stopwords=open(‘stopwords2.txt‘‘r‘encoding=‘UTF-8‘).readlines()
##如果是停用词就不保存到newSent
newSent=[]
for word in segword2:
if word+‘\n‘ in stopwords:
continue
else:
newSent.append(word)
return newSent ##返回newSent
##情感词定位
def words():
#读取情感词
senList=open(‘sentiment.txt‘‘r‘encoding=‘UTF-8‘).readlines()
senDict=defaultdict()
for s in senList:
senDict[s.split(‘‘)[0]]=s.split(‘‘)[1]
#读取否定词
notList=open(‘notDict.txt‘‘r‘encoding=‘UTF-8‘).readlines()
notDict=defaultdict()
for n in notList:
notDict[n.split(‘‘)[0]]=n.split(‘‘)[1]
#读取程度副词
degreeList=open(‘degreeDict.txt‘‘r‘encoding=‘UTF-8‘).readlines()
degreeDict=defaultdict()
for d in degreeList:
degreeDict[d.split(‘‘)[0]]=d.split(‘‘)[1]
return senDictnotDictdegreeDict
#列表转字典,对分词结果进行定位
def listToDist(wordlist):
data={}
#针对重复词汇,进行判断,采用复合键值
for x in range(0len(wordlist)):
if wordlist[x] not in data.keys():
data.setdafault(wordlist[x][x])
else:
data[wordlist[x]].append(x)
return data
def listToDist(wordlist):
“““将分词后的列表转为字典,key为单词,value为单词在列表中的索引,索引相当于词语在文档中出现的位置“““
data = {}
for x in range(0 len(wordlist)):
data[wordlist[x]] = x
return data
#根据情感定位获得句子得分
def classifyWords(wordDictsenDictnotDictdegreeDict):
senWord1=defaultdict()
notWord1=defaultdict()
degreeWord1=defaultdict()
for i in range(0len(wordDict[word])):
if word in senDict.keys() and word not in notDict.keys() and word not in degreeDict.key():
senWord1[wordDict[word][i]]=senDict[word]
elif word in notDict.keys() and word not in degreeDict.keys():
notWord1[wordDict[word][i]]=notDict[word]
elif word in degreeDict.keys():
degreeWord1[wordDict[word][i]]=degreeDict[word]
senWord1=sorted(senWord1.items()key=lambda asd:asd[0])
notWord1=sorted(notWord1.items()key=lambda asd:asd[0])
degreeWord1=sorted(degreeWord1.items()key=lambda asd:asd[0])
senWord=defaultdict()
for x in senWord1:
senWord[x[0]]=x[1]
notWord=defaultdict()
for y in notWord1:
notWord[y[0]]=y[1]
degreeWord=defaultdict()
for z in degreeWord1:
degreeWord[z[0]]=z[1]
return senWordnotWorddegreeWord
#情感聚合
def scoreSent(senWordnotWorddegre
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 471583 2019-02-28 22:12 情感分析代码修改\comments.txt
文件 2545 2019-02-28 18:11 情感分析代码修改\degreeDict.txt
文件 619 2019-02-28 18:15 情感分析代码修改\notDict.txt
文件 3 2019-02-28 22:25 情感分析代码修改\score.txt
文件 203101 2019-02-28 20:46 情感分析代码修改\sentiment.txt
文件 13710 2019-02-28 20:26 情感分析代码修改\stopwords2.txt
文件 7737 2019-02-28 23:02 情感分析代码修改\情感分析.py
目录 0 2019-02-28 23:35 情感分析代码修改
----------- --------- ---------- ----- ----
699298 8
相关资源
- python实现SGBM图像匹配算法
- python实现灰度直方图均衡化
- scrapy_qunar_one
- Python学习全系列教程永久可用
- python简明教程.chm
- 抽奖大转盘python的图形化界面
- 双边滤波器实验报告及代码python
- python +MYSQL+HTML实现21蛋糕网上商城
- Python-直播答题助手自动检测出题搜索
- OpenCV入门教程+OpenCV官方教程中文版
- Python 串口工具源码+.exe文件
- Python开发的全栈股票系统.zip
- Python操作Excel表格并将其中部分数据写
- python书籍 PDF
- 利用python绘制散点图
- python+labview+No1.vi
- 老男孩python项目实战
- python源码制作whl文件.rar
- python3.5可用的scipy
- PYTHON3 经典50案例.pptx
- 计算机科学导论-python.pdf
- python模拟鼠标点击屏幕
- windows鼠标自动点击py脚本
- 鱼c小甲鱼零基础学python全套课后题和
- Python 练习题100道
- Practical Programming 2nd Edition
- wxPython Application Development Cookbook
- python 3.6
- Python 3.5.2 中文文档 互联网唯一CHM版本
- python3.5.2.chm官方文档
评论
共有 条评论