python文本分析 __机器学习之LDA模型

项目背景

现在大家在进行网购过程中,肯定会看商品的相关评论,然后再综合衡量,最后决定是否购买相关产品。甚至不少消费者会先略过详情页直接看评论,然后决定是否下单,那么商品评论就成为了用户是否购买的核心因素之一了,因此了解商品给用户的体验尤为重要。

项目需求

对指定某一/类商品,生产商,卖家需要了解用户认同的优点和不认同的缺点。

项目流程

爬取数据并导出

通过scrapy框架爬取多个电商平台近20w条数据,这里展示下具体代码框架,此篇就不重点介绍了。
在这里插入图片描述

数据分析及训练模型
导入所需模块
import pandas as pd
import numpy as np
import csv
import codecs
from snownlp import SnowNLP
import jieba
from pandas import Series,DataFrame
from gensim import corpora,models
数据预处理

数据预处理包括数据去重以及机械压缩去词
由于代码不是同一天编写,所以我习惯性运行一步就导出一步,后面再导入数据,以免多次运行浪费时间。

# 文本去重
data = pd.read_csv('huizong.csv',encoding = 'utf-8')
data = data.dropna() # 删除空值
l1 = len(data)
data = pd.DataFrame(data['评论'].unique()) # 删除重复值
l2 = len(data)
data.to_csv('pinglun.csv',index = False,encoding='utf-8')
print(f'删除了{l1 - l2}条评论')
# 机械压缩去词
f = codecs.open('pinglun2.csv' ,'w','utf-8')
def cutword(strs,reverse = False):
    for A_string in strs: 
        temp1= A_string[0].strip('\n')       #去掉每行最后的换行符'\n' 
        temp2 = temp1.lstrip('\ufeff') 
        temp3= temp2.strip('\r')
        char_list=list(temp3)   
        list1=['']
        list2=['']
        del1=[]
        flag=['']
        i=0
        while(i<len(char_list)):
            if (char_list[i]==list1[0]):
                if (list2=&#
  • 13
    点赞
  • 63
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值