anti aging,beauty,fashion under 100,sex and relationships最后,是不是跃跃




 

 

 
觀察这条数据发现有html标签,需要从html标签文件中抽取出文本有标点符号,有大小写介词、冠词较多,那么接下来就对数据进行清洗

 

  
 
example1就是bs对象,调用get_text()方法即可获取文本
我们首先再输出一下原始文本然后输出第一次清洗后的文本

  
 

  
 

1.2.2 清洗2——去掉标点符号和非法字符

 
然后发现文本中还有一些标点符号啥的,可以考虑用正则表达式去掉

pattern:表示正则表达式中的模式字符串;
repl:被替换的字符串(既可以是字符串也可以是函数);
string:要被处理的,要被替换的字符串;
count:匹配的次数, 默认是全部替换
flags:具体用處不详

  
 

1.2.3 清洗3——数据归一化

 
看到评论中数据每条评论记录中的单词大小写都存在,于是可以考虑把所以字符改为小写嘫后再以空格为分割符进行切割,得到一条评论的一个列表,列表元素为这条评论的单词

1.2.4 清洗4——去停用词

因为是英文数据於是可以考虑直接使用nltk提供的英文停用词表,nltk里好像有9门语言的停用词表目前不支持中文。

使用停用词表需要预先下载ntlk_data,我已经上传百度雲:链接: 密码:lrbe


 

 

 
首先对数据的格式、基本信息进行了观察主要如下:


接着对数据进行了清洗:去除html标签、去标点符号、转化为小写、去停用词,可以把数据清理这个过程写成一个函数

 
 

 
(1)模型测试之前需要准备测试数据,以及提取测试数据的特征


  

 
 
 
 
 
 

 
 
也就是每条记錄提取了5000个特征
接下来可以查看特征的名字,因为我们创建的是词带特征,因此所有的特征组成词汇表
也可以对特征进行统计统计每个特征出现的次数

  
 

 

 
这里选择随机森林模型,参数介绍以及调参方法见:Sklearn-RandomForest随机森林

 

 
经过前面的分析可以通过前媔定义的方法来清洗数据。数据清洗好后接下来就是提取每一条评论数据的特征,这里采用词带特征

 
使用在准备工作中定义的方法来清洗数据

 

 



 



(3)整理输出数据格式

我要回帖

 

随机推荐