Python文本分析---笔记

Python文本分析

格式化数据:表格、json

非格式化数据:字符串、文本

内容:

1、中文分词

2、自定义词典、去停用词

3、词频统计、关键词抽取

4、案例:招聘需求关键词抽取

一、 中文分词

分词:就是将0维的非格式化文本转化为格式化、向量化数据

中文分词:将一个汉字序列切分成一个个单独的词

英文文档中,单词之间是以空格作为自然分界符的,而中文词没有一个形式上的分界符,虽然英文也同样存在短语的划分问题,不过在分词这一问题上,中文分词相比英文要复杂困难的多:

例如:

[0维的非格式化文本转为格式化]
分词后:
[’0维’ ‘的’ ‘非格式化’ ‘文本’ ‘转为’ ‘格式化’]

中文分词基本步骤
  1. 载入数据
  2. 分词
  3. 分词后的数据转回文本
  4. 保存分词后的文本为文本文件
import numpy as np
import pandas as pd

import jieba
import jieba.analyse

# 1. 载入数据
with open('E:/text_analysis/data/test.txt', 'r', encoding='UTF-8') as f:
    a = f.read()

# 2. 分词
print(a)  # 我来到了网易杭研大厦,我是网易人!
b = jieba.cut(a)
print(list(b))
c = jieba.lcut(a)  # 直接输出列表
print(c)
# ['我', '来到', '了', '网易', '杭研', '大厦', ',', '我', '是', '网易', '人', '!']

# 3. 分词后的数据转回文本
d = ' '.join(c)
print(d)

# 4.保存分词后的文本为文本文件
with open('E:/text_analysis/data/test_cut.txt', 'w', encoding='UTF-8') as f:
    f.write(d)
增加分词的准确率
添加自定义词典

一个词错误分为两个词,解决此问题

1、当句子中的某个词没有被识别分出时,可以指定自己自定义的词典,以便包含jieba词库里没有的词

2、词典文件的内容可以根据项目不断增加。查看初步分词,将分词不正确的词加入自定义词典然后重新再分,直到正确率达标。

3、虽然jieba有新词识别能力,但是自行添加新词可以保证更高的正确率
jieba.load_userdict(file_name) #file name 为文件类对象或自定义词典的路径

词典格式:

  • 词中间不能有标点符号
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值