当前位置 : 主页 > 编程语言 > python >

文本分词处理Python实践

来源:互联网 收集:自由互联 发布时间:2022-06-15
上一篇博客中爬取到了10个类别中数据并以文本的形式存取。 第二步便考虑对获得的文本进行分词操作~ 开发环境: anaconda3; jieba分词;(在anaconda中pip install jieba 命令成功下载并安装

上一篇博客中爬取到了10个类别中数据并以文本的形式存取。

第二步便考虑对获得的文本进行分词操作~

开发环境:

anaconda3;

jieba分词;(在anaconda中pip install jieba 命令成功下载并安装jieba包(conda和pip是两个不同的包管理器,那个jieba没在conda中,应该用pip进行安装)

上代码

# -*- coding: utf-8 -*-
"""
Created on Thu Mar 8 10:26:40 2018

@author: Administrator
"""
# 2017年7月4日00:13:40
# silei
# jieba分词,停用词,数据可视化,知识图谱
# 数据文件数一共1170个
# baby,car,food,health,legend,life,love,news,science,sexual
# 130,130,130,130,130,130,130,130,130,130

# -*- coding:UTF-8 -*-

import jieba

dir = {'baby': 130,'car': 130,'food': 130,'health': 130,'legend': 130,'life': 130,'love': 130,'news': 130,'science': 130,'sexual': 39}# 设置词典,分别是类别名称和该类别下一共包含的文本数量

data_file_number = 0# 当前处理文件索引数

for world_data_name,world_data_number in dir.items():# 将词典中的数据分别复制到world_data_name,world_data_number中

while (data_file_number < world_data_number):
print(world_data_name)
print(world_data_number)
print(data_file_number)# 打印文件索引信息

file = open('F:\\test\\'+world_data_name+'\\'+str(data_file_number)+'.txt','r',encoding= 'UTF-8')
file_w = open('F:\\test\\trainTest\\'+world_data_name+'\\'+str(data_file_number)+'.txt','w',encoding= 'UTF-8')
for line in file:
stoplist = {}.fromkeys([ line.strip() for line in open("F:\\test\\stopword.txt",encoding= 'UTF-8') ]) # 读取停用词在列表中

seg_list = jieba.lcut(line,cut_all=False)# jieba分词精确模式

seg_list = [word for word in list(seg_list) if word not in stoplist] # 去除停用词

print("Default Mode:", "/ ".join(seg_list))
for i in range(len(seg_list)):
file_w.write(str(seg_list[i])+'\n')# 分完词分行输入到文本中

# file_w.write(str(seg_list))
# print(line, end='')
file_w.close()
file.close()
data_file_number = data_file_number + 1
data_file_number = 0

运行完代码便可获得分词完的文本,分词操作完成!

上一篇:python FTP下载文件
下一篇:没有了
网友评论