使用python进行文本预处理和提取特征的实例


Posted in Python onJune 05, 2018

如下所示:

<strong><span style="font-size:14px;">文本过滤</span></strong>
result = re.sub(r'[^\u4e00-\u9fa5,。?!,、;:“ ”‘ '( )《 》〈 〉]', "", content)#只保留中文和标点
result = re.sub(r'[^\u4e00-\u9fa5]', "",content)#只保留中文 
result = re.sub(r'[^\0-9\.\u4e00-\u9fa5,。?!,、;:“ ”‘ '( )《 》〈 〉]', "", content)#只保留中文和标点和数字 
result = re.sub(r'[^\u4e00-\u9fa5,A-Za-z0-9]', "",content)#只保留中文、英文和数字

文本去除两个以上空格

content=re.sub(r'\s{2,}', '', content)

bas4编码变成中文

def bas4_decode(bas4_content): 
 decodestr= base64.b64decode(bas4_content) 
 result = re.sub(r'[^\0-9\.\u4e00-\u9fa5,。?!,、;:“ ”‘ '( )《 》〈 〉]', "", decodestr.decode())#只保留中文和标点和数字 
 return result

文本去停用词

def text_to_wordlist(text): 
 result = re.sub(r'[^\u4e00-\u9fa5]', "",text) 
 f1_seg_list = jieba.cut(result)#需要添加一个词典,来弥补结巴分词中没有的词语,从而保证更高的正确率 
 f_stop = codecs.open(".\stopword.txt","r","utf-8") 
 try: 
  f_stop_text = f_stop.read() 
 finally: 
  f_stop.close() 
 f_stop_seg_list = f_stop_text.split() 
 
 test_words = [] 
 
 for myword in f1_seg_list: 
  if myword not in f_stop_seg_list: 
   test_words.append(myword) 
    
 return test_words

文本特征提取

import jieba 
import jieba.analyse 
import numpy as np 
#import json 
import re

def Textrank(content):
 result = re.sub(r'[^\u4e00-\u9fa5]', "",content)
 seg = jieba.cut(result) 
 jieba.analyse.set_stop_words('stopword.txt')
 keyList=jieba.analyse.textrank('|'.join(seg), topK=10, withWeight=False) 
 return keyList

def TF_IDF(content):
 result = re.sub(r'[^\u4e00-\u9fa5]', "",content)
 seg = jieba.cut(result) 
 jieba.analyse.set_stop_words('stopword.txt')
 keyWord = jieba.analyse.extract_tags( 
  '|'.join(seg), topK=10, withWeight=False, allowPOS=())#关键词提取,在这里对jieba的tfidf.py进行了修改 
 return keyWord

以上这篇使用python进行文本预处理和提取特征的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
有关wxpython pyqt内存占用问题分析
Jun 09 Python
Python中subprocess的简单使用示例
Jul 28 Python
Python常用内置模块之xml模块(详解)
May 23 Python
学习Python3 Dlib19.7进行人脸面部识别
Jan 24 Python
python selenium 对浏览器标签页进行关闭和切换的方法
May 21 Python
Python爬虫使用脚本登录Github并查看信息
Jul 16 Python
实例讲解Python3中abs()函数
Feb 19 Python
python ChainMap 合并字典的实现步骤
Jun 11 Python
10分钟用python搭建一个超好用的CMDB系统
Jul 17 Python
python pptx复制指定页的ppt教程
Feb 14 Python
Windows系统下pycharm中的pip换源
Feb 23 Python
python GUI库图形界面开发之PyQt5表单布局控件QFormLayout详细使用方法与实例
Mar 06 Python
python 用正则表达式筛选文本信息的实例
Jun 05 #Python
python和shell获取文本内容的方法
Jun 05 #Python
python 查找文件名包含指定字符串的方法
Jun 05 #Python
Python使用爬虫爬取静态网页图片的方法详解
Jun 05 #Python
Python实现的读写json文件功能示例
Jun 05 #Python
python计算日期之间的放假日期
Jun 05 #Python
python检索特定内容的文本文件实例
Jun 05 #Python
You might like
编写php应用程序实现摘要式身份验证的方法详解
2013/06/08 PHP
PHP实现链式操作的核心思想
2015/06/23 PHP
php关闭warning问题的解决方法
2016/05/17 PHP
php 计算两个时间相差的天数、小时数、分钟数、秒数详解及实例代码
2016/11/09 PHP
PHP crc32()函数讲解
2019/02/14 PHP
基于jquery的无刷新分页技术
2011/06/11 Javascript
在jquery中处理带有命名空间的XML数据
2011/06/13 Javascript
angularjs中的e2e测试实例
2014/12/06 Javascript
JQuery实现展开关闭层的方法
2015/02/17 Javascript
Angularjs 设置全局变量的方法总结
2016/10/20 Javascript
Chrome浏览器的alert弹窗禁止再次弹出后恢复的方法
2016/12/30 Javascript
webpack 4.0.0-beta.0版本新特性介绍
2018/02/10 Javascript
Vue 全局loading组件实例详解
2018/05/29 Javascript
使用vue-cli脚手架工具搭建vue-webpack项目
2019/01/14 Javascript
Node.js 的 GC 机制详解
2019/06/03 Javascript
JS数组Object.keys()方法的使用示例
2019/06/05 Javascript
Javascript如何实现双指控制图片功能
2020/02/25 Javascript
nuxt静态部署打包相对路径操作
2020/11/06 Javascript
[06:36]吞吞映像top1
2014/06/20 DOTA
浅谈Python2、Python3相对路径、绝对路径导入方法
2018/06/22 Python
解决pycharm工程启动卡住没反应的问题
2019/01/19 Python
对Python w和w+权限的区别详解
2019/01/23 Python
python,Django实现的淘宝客登录功能示例
2019/06/12 Python
关于 Python opencv 使用中的 ValueError: too many values to unpack
2019/06/28 Python
详解python tcp编程
2020/08/24 Python
python 实现简易的记事本
2020/11/30 Python
介绍一下常见的木马种类
2014/11/15 面试题
土木工程专业个人求职信
2013/12/30 职场文书
会计毕业自我鉴定
2014/02/05 职场文书
电焊工工作岗位职责
2014/02/06 职场文书
四风对照检查剖析材料
2014/10/07 职场文书
教师党的群众路线教育实践活动个人整改措施
2014/11/04 职场文书
个人原因辞职信模板
2015/05/13 职场文书
神秘岛读书笔记
2015/07/01 职场文书
签证扫盲贴,41个常见签证知识,需要的拿走
2019/08/09 职场文书
导游词之张家口
2019/12/13 职场文书