第一部分 案例简介

本案例首先利用Python文本挖掘技术,对碎片化、非结构化的电商网站评论数据进行清洗与处理,转化为结构化数据。然后对文本数据进一步挖掘与分析,采用决策树算法构建情感分类模型,探索用机器学习算法对评论标注type的可能性;依据情感词库匹配情感词,计算每条评论的情感值,进而机器标注每条评论的正负类型type,用词云图直观呈现正负评论的关键词,初步获得用户的反馈意见。最后利用gensim库构建主题挖掘模型,深入了解用户的意见、购买原因、产品的优缺点等。

说明:本案例侧重分析思路及代码实现,不深入展开分析结果的业务解释与决策指导!

重要事情说三遍~

想听我讲案例,请点这里,进入B站
想听我讲案例,请点这里,进入B站
想听我讲案例,请点这里,进入B站

第二部分 框架

工具准备
一、导入数据
二、数据预处理
(一)去重
(二)数据清洗
(三)分词、词性标注、去除停用词、词云图
三、模型构建
(一)基于决策树的情感分类
(二)情感分析
(三)基于LDA模型的主题分析

第三部分 代码

工具准备

import os
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
from matplotlib.pylab import style #自定义图表风格
style.use('ggplot')
from IPython.core.interactiveshell import InteractiveShell
InteractiveShell.ast_node_interactivity = "all"
plt.rcParams['font.sans-serif'] = ['Simhei'] # 解决中文乱码问题import re
import jieba.posseg as psg
import itertools
#conda install -c anaconda gensim
from gensim import corpora,models #主题挖掘,提取关键信息# pip install wordcloud
from wordcloud import WordCloud,ImageColorGenerator
from collections import Counterfrom sklearn import tree
from sklearn.model_selection import train_test_split
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.metrics import classification_report
from sklearn.metrics import accuracy_score
import graphviz

一、导入数据

二、数据预处理




#分词,由元组组成的list
seg_content=content.apply( lambda s:  [(x.word,x.flag) for x in psg.cut(s)] )
#统计评论词数
n_word=seg_content.apply(lambda s: len(s))
#得到各分词在第几条评论
n_content=[ [x+1]*y for x,y in zip(list(seg_content.index),list(n_word))] #[x+1]*y,表示复制y份,由list组成的list
index_content_long=sum(n_content,[]) #表示去掉[],拉平,返回list
#分词及词性,去掉[],拉平
seg_content_long=sum(seg_content,[])
#得到加长版的分词、词性
word_long=[x[0] for x in seg_content_long]
nature_long=[x[1] for x in seg_content_long]
#content_type拉长
n_content_type=[ [x]*y for x,y in zip(list(reviews['content_type']),list(n_word))] #[x+1]*y,表示复制y份
content_type_long=sum(n_content_type,[]) #表示去掉[],拉平







三、模型构建



情感分析,截图部分,更多详情,请看B站视频




LDA模型,截图部分,更多详情,请看B站视频

#主题数寻优
#这个函数可以重复调用,解决其他项目的问题def LDA_k(x_corpus,x_dict):'''函数功能:'''#初始化平均余玄相似度mean_similarity=[]mean_similarity.append(1)#循环生成主题并计算主题间相似度for i in np.arange(2,11):lda=models.LdaModel(x_corpus,num_topics=i,id2word=x_dict) #LDA模型训练for j in np.arange(i):term=lda.show_topics(num_words=50)#提取各主题词top_word=[] #shape=(i,50)for k in np.arange(i):top_word.append( [''.join(re.findall('"(.*)"',i)) for i in term[k][1].split('+')]) #列出所有词#构造词频向量word=sum(top_word,[]) #列车所有词unique_word=set(word) #去重#构造主题词列表,行表示主题号,列表示各主题词mat=[] #shape=(i,len(unique_word))for j in np.arange(i):top_w=top_word[j]mat.append( tuple([ top_w.count(k) for k in unique_word ])) #统计list中元素的频次,返回元组#两两组合。方法一p=list(itertools.permutations(list(np.arange(i)),2)) #返回可迭代对象的所有数学全排列方式。y=len(p) # y=i*(i-1)top_similarity=[0]for w in np.arange(y):vector1=mat[p[w][0]]vector2=mat[p[w][1]]top_similarity.append(cos(vector1,vector2))#        #两两组合,方法二
#        for x in range(i-1):
#            for y in range(x,i):#计算平均余玄相似度mean_similarity.append(sum(top_similarity)/ y)return mean_similarity


参考材料《Python数据分析与挖掘实战》

链接:https://pan.baidu.com/s/1na4I2yYZpjj3vByfbgZXGg
提取码:zj7p

Python文本挖掘练习(五)// 电商产品评论数据情感分析相关推荐

  1. 基于电商产品评论数据情感分析

    #!/usr/bin/env python # coding: utf-8# # -- 基于电商产品评论数据情感分析 --# ### 1.案例简介 # # 1.利用文本挖掘技术,对碎片化.非结构化的电 ...

  2. 【项目实战】Python实现基于LDA主题模型进行电商产品评论数据情感分析

    说明:这是一个机器学习.数据挖掘实战项目(附带数据+代码+文档+视频讲解),如需数据+代码+文档+视频讲解可以直接到文章最后获取. 视频: Python实现基于LDA模型进行电商产品评论数据情感分析 ...

  3. 《Python数据分析与挖掘实战》第15章 ——电商产品评论数据情感分析(LED)

    文章目录 1.挖掘背景与目标 2.2 数据探索与预处理 2.1 数据筛选 2.2 数据去重 2.3 删除前缀评分 2.4 jieba分词 3 基于LDA 模型的主题分析 4.权重 5.如何在主题空间比 ...

  4. 数据挖掘实战—电商产品评论数据情感分析

    文章目录 引言 一.评论预处理 1.评论去重 2.数据清洗 二.评论分词 1.分词.词性标注.去除停用词 2.提取含名词的评论 3.绘制词云查看分词效果 三.构建模型 1.评论数据情感倾向分析 1.1 ...

  5. 数据分析与挖掘实战-电商产品评论数据情感分析

    电商产品评论数据情感分析 背景 随着网上购物越来越流行,人们对于网上购物的需求越来越高,这让京东.淘宝等电商平台得到了很大的发展机遇.但是,这种需求也推动了更多的电商平台的崛起,引发了激烈的竞争.在这 ...

  6. 毕业设计之 - 大数据分析:电商产品评论数据情感分析

    文章目录 1 简介 数据分析目的 数据预处理 评论去重 数据清洗 分词.词性标注.去除停用词 提取含名词的评论 绘制词云¶ 词典匹配 评论数据情感倾向分析 修正情感倾向 LinearSVC模型预测情感 ...

  7. 数据分析与挖掘:电商产品评论数据情感分析

    电商产品评论数据情感分析 1. 背景与挖掘目标 2. 分析方法与过程 2.1 数据抽取 2.2 评论预处理 2.3 LDA 主题分析 1. 背景与挖掘目标 项目为<Python 数据分析与挖掘实 ...

  8. 数据挖掘作业学习学习笔记-电商产品评论数据情感分析

    使用的教材:<电商产品评论数据情感分析> 作业&学习笔记:数据挖掘第14周 说明:书本内容详实.此篇用于自己期末回顾知识的重点内容,故做出的学习笔记缺省了书本原本的其他精粹. 随着 ...

  9. 基于python文本挖掘的电商产品评论数据情感分析报告

    背景 近年来,随着互联网的广泛应用和电子商务的迅速发展,网络文本及用户评论分析意义日益凸显,因此网络文本挖掘及网络文本情感分析技术应运而生,通过对文本或者用户评论的情感分析,企业能够进行更有效的管理等 ...

最新文章

  1. Xcode快捷键及代码块
  2. 美团技术面1小时,我看出了和月薪3w的差距
  3. EasyTouch初步使用
  4. html列表的列选择事件,html5 datalist 选中option选项后的触发事件
  5. 精简自己20%的代码
  6. cxf客户端访问方式
  7. Java中的程序设计模式--单例与多例
  8. 回文数(信息学奥赛一本通-T1309)
  9. 从Xcode中的动态库中剥离不需要的架构 Submit to App Store issues: Unsupported Architecture X86_64, i386
  10. JavaWeb播放视频实现断点续传、分片上传
  11. Win10 1709系统更新后卡顿:Killer 无线网卡1525驱动不兼容导致
  12. java hsqldb数据库,HSQLDB数据库的使用
  13. IDEA安装yarn
  14. 数采仪厂家_环保数采仪生产厂家
  15. 4步讲解一维数组传参与二维数组传参
  16. 域名和服务器IP地址有什么关系
  17. 移动端300ms延迟_移动端300ms延迟的解决方法
  18. 基于HTML美中华传统文化题材网页项目的设计与实现 (纯HTML+CSS制作中国茶文化网站)...
  19. MPI实现并行pagerank
  20. 越权问题解决优化方案

热门文章

  1. CCF-CSP真题《202206-3—角色授权》思路+python题解
  2. zookeeper的Leader选举机制详解
  3. Struts2安全缺陷(上)
  4. java实现俩个矩阵的相乘
  5. 1145 - 【入门】数列求和
  6. 2023年,拥有软考证书在这些地区可以领取福利补贴
  7. 计算机控制面板没有笔和触摸,HP EliteBook 840 G1 笔记本电脑 - 虽然电脑不支持触控笔,但控制面板仍显示触控笔和触摸选项卡...
  8. Android开发书籍推荐 学习路线图 资料汇整
  9. 柯桥俄语培训机构哪家好,能说出“как”的多少种用法呢?
  10. 复旦-华盛顿大学EMBA丨华盛顿大学奥林商学院获诺贝尔经济学奖