资源简介
代码的详解在我的博客中有所介绍,或者也可以看我的知乎文章:https://zhuanlan.zhihu.com/p/103080917。
这个是.py文件,可以直接进行调试。我是在python3.7版本下进行调试的,不同版本的python语法可能会略有不同。调试前需要安装一些库,在.py文件的开头有所说明。调试的一些所需文件、部分说明,可以在这个链接中进行下载:https://pan.baidu.com/s/19oFMA0Aa2kAJRJMM8ZO6Vg;提取码:lf38。
有疑问可以评论说哈~
这个是.py文件,可以直接进行调试。我是在python3.7版本下进行调试的,不同版本的python语法可能会略有不同。调试前需要安装一些库,在.py文件的开头有所说明。调试的一些所需文件、部分说明,可以在这个链接中进行下载:https://pan.baidu.com/s/19oFMA0Aa2kAJRJMM8ZO6Vg;提取码:lf38。
有疑问可以评论说哈~
代码片段和文件信息
‘‘‘
运行前:
1.将 分析文档、用户词典、停用词库、词频背景 放在这一程序的同一目录下,并更改相应变量名称。
其中,分析文档为必须项,其余功能用户可根据个人需求进行选用(不用的话可以注释掉)
2.先通过cmd安装相关库(部分可能已系统内置),格式如:
pip install re
pip install jieba
pip install collections
pip install numpy
pip install PIL
pip install wordcloud
pip install matplotlib.pyplot
(当然也可以用其他方式安装啦,这里只是举个例子)
‘‘‘
# 提示当前状态
print(‘正在处理,请稍等…… :D\n‘)
# 主要功能自定义设置
Analysis_text = ‘分析文档.txt‘ # 分析文档
userdict = ‘用户词典.txt‘ # 用户词典
StopWords = ‘停用词库.txt‘ # 停用词库
number = 100 # 统计个数
Output = ‘词频.txt‘ # 输出文件
background = ‘词频背景.jpg‘ # 词频背景
# 导入扩展库
import re # 正则表达式库
import jieba # 结巴分词
import jieba.posseg # 词性获取
import collections # 词频统计库
import numpy # numpy数据处理库
from PIL import Image # 图像处理库
import wordcloud # 词云展示库
import matplotlib.pyplot as plt # 图像展示库(这里以plt代表库的全称)
# 读取文件
fn = open(Analysis_text‘r‘encoding = ‘UTF-8‘) # 打开文件
string_data = fn.read() # 读出整个文件
fn.close() # 关闭文件
# 文本预处理
pattern = re.compile(u‘\t|\n|\.|-|:|;|\)|\(|\?|“‘) # 定义正则表达式匹配模式(空格等)
string_data = re.sub(pattern ‘‘ string_data) # 将符合模式的字符去除
# 动态调整词典
jieba.suggest_freq(‘小小花‘ True) #True表示该词不能被分割,False表示该词能被分割
# 添加用户词典
jieba.load_userdict(userdict)
# 文本分词
seg_list_exact = jieba.cut(string_data cut_all=False HMM=True) # 精确模式分词+HMM
object_list = []
# 去除停用词(去掉一些意义不大的词,如标点符号、嗯、啊等)
with open(StopWords ‘r‘ encoding=‘UTF-8‘) as meaninglessFile:
stopwords = set(meaninglessFile.read().split(‘\n‘))
stopwords.add(‘ ‘)
for word in seg_list_exact: # 循环读出每个分词
if word not in stopwords: # 如果不在去除词库中
object_list.append(word) # 分词追加到列表
# 词频统计
word_counts = collections.Counter(object_list) # 对分词做词频统计
word_counts_top = word_counts.most_common(number) # 获取前number个最高频的词
# 英文词性转中文词性字典:简洁版
En2Cn = {
‘a‘ : ‘形容词‘
‘ad‘ : ‘形容词‘
‘ag‘ : ‘形容词‘
‘al‘ : ‘形容词‘
‘an‘ : ‘形容词‘
‘b‘ : ‘区别词‘
‘bl‘ : ‘区别词‘
‘c‘ : ‘连词‘
‘cc‘ : ‘连词‘
‘d‘ : ‘副词‘
‘e‘ : ‘叹词‘
‘eng‘ : ‘英文‘
‘f‘ : ‘方位词‘
‘g‘ : ‘语素‘
‘h‘ : ‘前缀‘
‘i‘ : ‘成语‘
‘j‘ : ‘简称略语‘
‘k‘ : ‘后缀‘
‘l‘ : ‘习用语‘
‘m‘ : ‘数词‘
‘mq‘ : ‘数量词‘
‘n‘ : ‘名词‘
‘ng‘ : ‘名词‘
‘nl‘ : ‘名词‘
‘nr‘ : ‘名词‘
‘nr1‘ : ‘名词‘
‘nr2‘ : ‘名词‘
‘nrf‘ : ‘名词‘
‘nrfg‘ : ‘名词‘
‘nrj‘ : ‘名词‘
‘ns‘ : ‘名词‘
‘nsf‘ : ‘名词‘
‘nt‘ : ‘名词‘
‘nz‘ : ‘名词‘
‘o‘ : ‘拟声词‘
‘p‘ : ‘介词‘
‘pba‘ : ‘介词‘
‘pbei‘ : ‘介词‘
‘q‘ : ‘量词‘
‘qt‘ : ‘量词‘
‘qv‘ : ‘量词‘
‘r‘ : ‘代词‘
‘rg‘ : ‘代词‘
‘rr‘ : ‘代词‘
‘
相关资源
- 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官方文档
评论
共有 条评论