使用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 相关文章推荐
python中的实例方法、静态方法、类方法、类变量和实例变量浅析
Apr 26 Python
wxpython 最小化到托盘与欢迎图片的实现方法
Jun 09 Python
Python的Socket编程过程中实现UDP端口复用的实例分享
Mar 19 Python
python开发环境PyScripter中文乱码问题解决方案
Sep 11 Python
实例讲解Python脚本成为Windows中运行的exe文件
Jan 24 Python
安装docker-compose的两种最简方法
Jul 30 Python
Python字典深浅拷贝与循环方式方法详解
Feb 09 Python
Python处理PDF与CDF实例
Feb 26 Python
python使用OpenCV模块实现图像的融合示例代码
Apr 10 Python
使用Keras训练好的.h5模型来测试一个实例
Jul 06 Python
Python+kivy BoxLayout布局示例代码详解
Dec 28 Python
Python爬虫分析微博热搜关键词的实现代码
Feb 22 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
什么是MVC,好东西啊
2007/05/03 PHP
一个PHP的String类代码
2010/04/20 PHP
解析php mysql 事务处理回滚操作(附实例)
2013/08/05 PHP
php实现在线生成条形码示例分享(条形码生成器)
2013/12/30 PHP
PHP简单选择排序算法实例
2015/01/26 PHP
PHP实现搜索地理位置及计算两点地理位置间距离的实例
2016/01/08 PHP
CodeIgniter框架数据库基本操作示例
2018/05/24 PHP
PHP yield关键字功能与用法分析
2019/01/03 PHP
jquery 锁定弹出层实现代码
2010/02/23 Javascript
jquerymobile checkbox及时刷新才能获取其准确值
2012/04/14 Javascript
关于extjs4如何获取grid修改后的数据的问题
2013/08/07 Javascript
js对字符的验证方法汇总
2015/02/04 Javascript
微信jssdk用法汇总
2016/07/16 Javascript
jQuery多级联动下拉插件chained用法示例
2016/08/20 Javascript
bootstrap css样式之表单
2017/01/19 Javascript
es7学习教程之fetch解决异步嵌套问题的方法示例
2017/07/21 Javascript
Windows下快速搭建NodeJS本地服务器的步骤
2017/08/09 NodeJs
Vue项目组件化工程开发实践方案
2018/01/09 Javascript
使用Vue的slot插槽分发父组件内容实现高度复用、更加灵活的组件(推荐)
2018/05/01 Javascript
原生JS实现简单的无缝自动轮播效果
2018/09/26 Javascript
微信小程序实现张图片合成为一张并下载
2019/07/16 Javascript
解决vue与node模版引擎的渲染标记{{}}(双花括号)冲突问题
2020/09/11 Javascript
[43:18]NB vs Infamous 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.22
2019/09/05 DOTA
在Python中使用SimpleParse模块进行解析的教程
2015/04/11 Python
解决python3 网络请求路径包含中文的问题
2018/05/10 Python
python实现在遍历列表时,直接对dict元素增加字段的方法
2019/01/15 Python
OpenCV利用python来实现图像的直方图均衡化
2020/10/21 Python
The Hut德国站点:时装、家居用品、美容等
2016/09/23 全球购物
什么是设计模式
2012/06/17 面试题
EJB的角色和三个对象
2015/12/31 面试题
餐厅总经理岗位职责
2013/12/31 职场文书
《彩色世界》教学反思
2014/04/12 职场文书
MySQL索引知识的一些小妙招总结
2021/05/10 MySQL
解析高可用Redis服务架构分析与搭建方案
2021/06/20 Redis
IDEA 2022 Translation 未知错误 翻译文档失败
2022/04/24 Java/Android
Java8 CompletableFuture 异步回调
2022/04/28 Java/Android