使用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深入学习之对象的属性
Aug 31 Python
python对字典进行排序实例
Sep 25 Python
Python使用getpass库读取密码的示例
Oct 10 Python
Python探索之实现一个简单的HTTP服务器
Oct 28 Python
Python中的random.uniform()函数教程与实例解析
Mar 02 Python
对Django的restful用法详解(自带的增删改查)
Aug 28 Python
python解析yaml文件过程详解
Aug 30 Python
Python3.7基于hashlib和Crypto实现加签验签功能(实例代码)
Dec 04 Python
PyCharm中如何直接使用Anaconda已安装的库
May 28 Python
Python xlrd模块导入过程及常用操作
Jun 10 Python
使用K.function()调试keras操作
Jun 17 Python
python中_del_还原数据的方法
Dec 09 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
全国FM电台频率大全 - 31 新疆维吾尔族自治区
2020/03/11 无线电
探讨各种PHP字符串函数的总结分析
2013/06/05 PHP
使用PHP静态变量当缓存的方法
2013/11/13 PHP
php定时计划任务与fsockopen持续进程实例
2014/05/23 PHP
详解WordPress中过滤链接与过滤SQL语句的方法
2015/12/18 PHP
jquery动态加载图片数据练习代码
2011/08/04 Javascript
JavaScript高级程序设计(第3版)学习笔记7 js函数(上)
2012/10/11 Javascript
ie6下png图片背景不透明的解决办法使用js实现
2013/01/11 Javascript
javaScript 动态访问JSon元素示例代码
2013/08/30 Javascript
引用外部脚本时script标签关闭的写法
2014/01/20 Javascript
百度地图API之本地搜索与范围搜索
2015/07/30 Javascript
nodejs中使用HTTP分块响应和定时器示例代码
2017/03/19 NodeJs
JS控件bootstrap datepicker使用方法详解
2017/03/25 Javascript
JS中的函数与对象的创建方式
2019/05/12 Javascript
使用Vue Composition API写出清晰、可扩展的表单实现
2020/06/10 Javascript
详解JavaScript 中的批处理和缓存
2020/11/19 Javascript
[01:43]3.19DOTA2发布会 三代刀塔人第三代
2014/03/25 DOTA
python3实现短网址和数字相互转换的方法
2015/04/28 Python
MySQL最常见的操作语句小结
2015/05/07 Python
TensorFlow模型保存/载入的两种方法
2018/03/08 Python
Python替换月份为英文缩写的实现方法
2019/07/15 Python
python 协程中的迭代器,生成器原理及应用实例详解
2019/10/28 Python
Python 中由 yield 实现异步操作
2020/05/04 Python
python爬虫使用正则爬取网站的实现
2020/08/03 Python
ABOUT YOU罗马尼亚:超过600个时尚品牌
2019/09/19 全球购物
体育系毕业生求职自荐信
2014/04/16 职场文书
学习方法演讲稿
2014/05/10 职场文书
社区禁毒工作方案
2014/06/02 职场文书
公司优秀员工获奖感言
2014/08/14 职场文书
升职自荐信范文
2015/03/27 职场文书
新员工试用期工作总结2015
2015/05/28 职场文书
员工升职自我评价
2019/03/26 职场文书
MySQL 8.0 之不可见列的基本操作
2021/05/20 MySQL
船舶调度指挥系统——助力智慧海事
2022/02/18 无线电
css3新特性的应用示例分析
2022/03/16 HTML / CSS
Ruby处理CSV数据方法详解
2022/04/18 Ruby