下面是分析过程
1、 提出问题
(1) Kindle相关产品的评论数排名和平均评分能反映哪些问题?
(2) Kindle相关产品的好评率如何?推荐评论占比怎样?
(3) Kindle相关产品随时间变化其评论数的变化情况是怎样的?
(4) Kindle相关产品备受好评的原因主要是什么?
2、 理解数据
数据来源:
https://www.kaggle.com/datafiniti/consumer-reviews-of-amazon-products/home
数据集中有用的字段如下:
id-用户编号
name-产品名称
asins-产品编号,每一个产品编号对应一个产品,可用它进行产品分组
brand-品牌
categories-产品类别
keys-类别关键字
manufacturer-制造商
reviews.date-评论时间,可以分析各时间段评论数
reviews.dateAdded-追评时间
reviews.dateSeen-评论可见时间
reviews.doRecommend-评论是否被推荐
reviews.numHelpful-帮助性分子数
reviews.rating-评分,可进行求平均值等描述统计分析
reviews.sourceURLs-评论链接
reviews.text-评论文字内容,可以进行抽取关键字,分析评分原因
reviews.title-评论标题
reviews.username-用户名
3、 数据清洗
(1) 选取子集
1) 在产品类别(categories)中筛选含 Kindle类别的产品,并将筛选的数据复制到新的文件中:(2) 列重命名
将数据集中字段的名称更改为中文字段(3) 删除重复项
这里需要对评论文字内容列进行删除重复项,此操作删除0个重复项。
(4) 处理缺失值
缺失值处理方法有四种:
1)对比缺失内容,通过手动输入内容补全
2)删除缺失的数据
3)用平均值代替缺失值
4)用统计模型计算出的值去代替缺失值
通过筛选查看各字段内容,发现产品名称(name)、产品品牌(asins)、评分(rating)、评论时间(date)和是否被推荐(doRecommend)字段中均存在缺失值
a. 产品名称(name)、产品编号(asins)、评分(rating)、评论时间(date):对这4个字段中存在的缺失值,为了避免输入错误信息或删除有用的信息,这里选择直接删除空白项对应的行
操作:选择对应字段 – 定位条件 - 空值 - 删除行
b. 是否被推荐(doRecommend):用FALSE手动补全评论是否被推荐(doRecommend)字段中的缺失值
操作:选择对应字段 - 定位条件 - 空值 - 输入FALSE - ctrl+Enter
(5) 一致化处理
1) 日期格式转换
评论时间字段中格式包含日期+时间,分析中并未使用到具体时间段,这里把评论日期拆分为三列,分别为年、月、日
年:插入一列年,使用LEFT()函数2) 分组
在评分字段后面插入一列评价等级,对评分进行分组,03分为差评,45分为好评
使用IF函数实现:=IF(P2<=3,"差评","好评"
4、 构建模型
(1) Kindle相关产品的评论数排名和平均评分能反映哪些问题?
由图上可以看出,产品(Amazon Kindle Paperwhite - eBook reader - 4 GB - 6 monochrome Paperwhite - touchscreen - Wi-Fi - black) 的评论数最多,前3名的评论数差别不大,从第4名起评论数明显减少,相比第1名减少5倍多,这说明 Kindle类产品容易出现聚集效应,绝大部分用户只喜欢特定的两三种产品。
产品的平均评分表示消费者对该产品的评价。
由图上可知,大多数产品的平均评分都在4.5分或以上,这说明 Kindle类产品的评价都较高。但有些产品的评论数很少,考虑是知名度较低,或者相对其他产品有明显的缺点。
(2) Kindle相关产品评论总数中各评分的占比?推荐评论中好评数量占比怎样?
由图上可以看出,评分中3分及3分以下的占比5%,4分及以上的占比95%,由此可见该类好评率高达95%,虽然不能保证所有评论评分都值得相信,但是仍然反映用户对Kindle相关产品的使用普遍感到满意。
(3) Kindle相关产品随时间变化其评论数的变化情况是怎样的?
由图上可知 ,评论数量是从2015年开始快速变化的,从15年急剧增加到6000多,有关Kindle的产品种类也是从15年快速上升。
由图上可以看出,评论数量是从2015年开始迅速增加,在2016年12月达到最高峰,用户一年中的消费主要集中在11月、12月和1月。
(4) Kindle相关产品广受好评的原因主要是什么?
对评论文字内容字段进行关键字提取,获取产品受欢迎的原因有哪些?
该部分使用到Python软件,通过调用第三方工具包,对评论内容生成词云,从而获得关键信息。
Python代码如下:
#导入相关模块
import numpy as np
import pandas as pd
from wordcloud import WordCloud,STOPWORDS,ImageColorGenerator
import matplotlib.pyplot as plt
from scipy.misc import imread
# 加载数据
word = pd.read_csv(r'C:\Users\Administrator\Desktop\amazon.csv')
# for循环遍历每个单词
text = ''
for i in word['评论文字内容']:
i = i.lower().replace(".","") # lower将单词改为小写
text += i + ' '
# 生成词云图
"""
WordCloud参数
collocations:是否包括两个词的搭配
width : int (default=400) #输出的画布宽度,默认为400像素
height : int (default=200) #输出的画布高度,默认为200像素
background_color:设置背景颜色
scale:按照比例进行放大画布,如设置为1.5,则长和宽都是原来画布的1.5倍
"""
font = r'C:\Windows\Fonts\simfang.ttf'
wordcloud = WordCloud(collocations=True,font_path=font,background_color='white',width=500, height=300).generate(text)
# 显示词云图片
plt.imshow(wordcloud)
plt.axis('off')
plt.show()
最后生成词云图片为:由图上可知,Oasis(钢化膜)、cover(封面)、电池寿命长(battery life)、轻便(very handy)、小巧(small)、运行流畅(works great)这些字样特别明显,这说明消费者喜欢该类产品的原因是它轻便小巧、电池寿命长、运行流畅、价格实惠、封面漂亮,但是屏幕易碎,需要贴膜。
5、 总结与建议
(1)总结
1)Kindle及周边各产品评分比较高,但评论数排名前3和排名第4名起其数目差距比较大,大部分产品只有少数评论数,绝大部分用户只喜欢特定的两三种产品。
2)Kindle及周边商品深受消费者喜爱,好评度很高。
3)Kindle及周边产品在每年1月、11月和12月评论数骤增,应加大销售手段,刺激消费增长销售额。
4)Kindle及周边产品广受好评的主要原因是:其产品特点轻便小巧、电池寿命长、运行流畅、价格实惠、封面漂亮。
(2)建议
1)选择最受欢迎的三种产品作为主要商品,分别是
I. Amazon Kindle Paperwhite - eBook reader - 4 GB - 6 monochrome Paperwhite - touchscreen - Wi-Fi – black
II. Echo (White)
III. Amazon Fire Tv
2)利用商品使用、性能及价格的优势作为主要宣传手段。
3)在黄金时期(11、12、1月),加大宣传力度,刺激产品销售,提高销售量。