使用python进行文本预处理和提取特征的实例
作者:Johline 时间:2022-07-13 21:25:47
如下所示:
<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
来源:https://blog.csdn.net/Johline/article/details/78802381
标签:python,预处理,提取,特征
0
投稿
猜你喜欢
js调用AJAX时Get和post的乱码解决方法
2024-05-09 10:38:11
让SQL Server数据库自动执行管理任务(一)
2009-03-20 10:35:00
PHP中非常有用却鲜有人知的函数集锦
2023-11-24 14:29:47
PyCharm 常用快捷键和设置方法
2022-04-09 01:40:59
简述:我为什么选择Python而不是Matlab和R语言
2021-05-13 06:51:27
MySQL六种约束的示例详解
2024-01-16 19:15:38
Go语言defer语句的三种机制整理
2024-05-02 16:25:25
MYSQL教程:服务器优化和硬件优化
2009-02-27 15:43:00
简单了解django索引的相关知识
2021-10-01 14:55:43
Mysql DDL常见操作汇总
2024-01-22 05:30:09
Python异常学习笔记
2021-03-24 01:33:33
浅析Mysql和Oracle分页的区别
2024-01-23 16:38:49
Vue CLI2升级至Vue CLI3的方法步骤
2024-06-05 10:03:25
JavaScript插件化开发教程 (一)
2024-04-26 17:13:07
Python实现GUI计算器(附源码)
2022-06-07 03:32:47
vue 无法覆盖vant的UI组件的样式问题
2024-05-13 09:44:23
远程部署工具Fabric详解(支持Python3)
2023-10-26 14:05:18
Flask实现图片的上传、下载及展示示例代码
2023-07-14 20:46:17
cordova+vue+webapp使用html5获取地理位置的方法
2024-04-27 16:00:05
Python实现各种邮件发送
2021-09-01 17:35:47