首页 > 其他 > 详细

数据挖掘——文本挖掘

时间:2018-09-11 23:29:36      阅读:177      评论:0      收藏:0      [点我收藏+]

文本挖掘是将文本信息转化为可利用的数据的知识。  

第一步:创建“语料库”

语料库(Corpus)是我们要分析的所有文档的集合。

实现逻辑:

  将各文本文件分类放置在一个根目录下,通过读取根目录下所有子目录中的所有文件,

  然后将读取结果赋值到一个数据框中,得到含有文件路径、文件内容的结果。

代码核心:

  构建方法:os.walk(fileDir)    对在fileDir目录下的所有文件(for循环)进行操作  ,得到文件路径

  文件读取:codecs.open(filepath,medthod,encoding)   文件路径、打开方式(r,w,rw)、文件编码  ,得到文本内容

#构建语料库       
import codecs
filepaths = []  #构建一个空的‘文件路径’列表
filecontents = [] #构建一个空的‘文件内容’列表
for root, dirs, files in os.walk(‘.\SogouC.mini\Sample):
    for name in files:
         #拼接文件路径,得到所有子文件夹下的文件的文件路径的列表 filepaths,包含根目录、子目录和文件名
        filepath = os.path.join(root,name)   
        filepaths.append(filepath) #将所有子文件夹下的文件路径的列表合并到一个新的列表中
        #打开文件,‘r’表示只读,编码方式‘utf-8’
        f = codecs.open(filepath,r,utf-8)
        filecontent = f.read() #读取文件,并将内容传入到  ‘filecontent‘(文件内容)列表中
        f.close() #关闭文件
        filecontents.append(filecontent) #将所有子文件夹下的文件内容的列表合并到一个新的列表中
        
import pandas as pd
#根据得到的合并后的文件路径和文件内容,得到语料库的数据框
corpos = pd.DataFrame({
        filePath:filepaths,
        fileContent:filecontents})
corpos.to_csv(‘.\corpos.csv,sep=,,encoding=utf_8_sig,index=False)
###防止保存时出现乱码,需要参数encoding=utf_8_sig

 第二步:中文分词

  一般使用 jieba 中文分词包

  jieba.cut(‘str‘)   对str进行分词

  jieba.add_word()   增加自定义分词

  jieba.load_userdict()  通过导入保存文件中的单词添加到词库

<未完>

 

 

  

数据挖掘——文本挖掘

原文:https://www.cnblogs.com/rix-yb/p/9630956.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!