数据挖掘——文本挖掘

Posted rix-yb

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据挖掘——文本挖掘相关的知识,希望对你有一定的参考价值。

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

第一步:创建“语料库”

语料库(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.miniSample):
    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()  通过导入保存文件中的单词添加到词库

<未完>

 

 

  



以上是关于数据挖掘——文本挖掘的主要内容,如果未能解决你的问题,请参考以下文章

如何利用常见的文本挖掘方法去探索分子数据集?

R语言文本挖掘

最强干货关于文本挖掘的资料(文献,报告,策略,代码)

数据挖掘——文本挖掘

Oracle数据库从RMAN备份集片段还原指定单个归档日志进行日志挖掘分析

R文本挖掘之tm包