美妆网购销售数据分析系统主要分析了美妆产品销售情况,销售额,销售数量,以及最受人们喜爱的美妆产品,这些都是基于jupyter notebook 来实现和完成的。本章节主要是详细分析该数据是如何得到,以及这些数据最后会呈现什么样的情况。
5.1数据的读取
大家都知道,Python中pandas模块是专门用来数据分析的一个强大工具,在《Python数据分析之pandas学习(一)》和《Python数据分析之pandas学习(二)》中详细介绍了有关pandas模块的应用,下面我们就来介绍pandas是如何读取数据的。
1、读取txt数据
In [1]: import pandas as pd
In [2]: mydata_txt = pd.read_csv('C:\\test_code.txt',sep = '\t',encoding = 'utf-8')
对于中文的文本文件常容易因为编码的问题而读取失败,正如上图所示。遇到这样的编码问题该如何处置呢?解决办法有两种情况:
1)当原始文件txt或csv的数据不是uft8格式时,需要另存为utf8格式编码;
2)如果原始的数据文件就是uft8格式,为了正常读入,需要将read_csv函数的参数encoding设置为utf-8
将原始数据另存为utf8格式的数据,重新读入txt数据
In [3]: mydata_txt = pd.read_csv('C:\\test.txt',sep = '\t',encoding = 'utf-8')
In [4]: mydata_txt
很顺利,txt文本文件数据就这样进入了Python的口袋里了。
2、读取csv数据
csv文本文件是非常常用的一种数据存储格式,而且其存储量要比Excel电子表格大很多,下面我们就来看看如何利用Python读取csv格式的数据文件:
In [5]: mydata_csv = pd.read_csv('C:\\test.csv',sep = ',',encoding = 'utf-8')
In [6]: mydata_csv
如果你善于总结的话,你会发现,txt文件和csv文件均可以通过pandas模块中的read_csv函数进行读取。该函数有20多个参数,类似于R中的read.table函数,如果需要查看具体的参数详情,可以查看帮助文档:help(pandas.read_csv)。
主要代码为:
import numpy as np
import pandas as pd
import seaborn as sns
from matplotlib import pyplot as plt
%matplotlib inline
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
import warnings
warnings.filterwarnings('ignore')
df=pd.read_csv('./beautymakeup.csv',',')
df.info()
5.2数据的预处理
数据质量分析是数据预处理的前提,是数据挖掘分析结论有效性和准确性的基础,其主要任务是检查原始数据中是否存在脏数据,脏数据一般指的是不符合要求的,以及不能直接进行相应分析的数据。
数据清洗的目的在于提高数据质量,将脏数据清洗干净,使原数据具有完整性、唯一性、权威性、合法性、一致性等特点。
脏数据包括:
-
缺失值
-
kon值
-
不一致的值
-
重复数据及含有特殊符号(如#、¥、*)的数据
主要代码为:
- 去重复值(df.duplicated().sum()
df.drop_duplicates(inplace=True)
df.shape) - (空值)缺失值
缺失值主要代码:
df.sale_count.mode()
df.comment_count.mode()
df.fillna(0,inplace=True)
df.sale_count=df.sale_count.astype('int64')
df.comment_count=df.comment_count.astype('int64')
df.isnull().sum()#检查是否完成缺失值的处理
数据的预处理是在对数据分类和分组之前所做的必要处理,内容包括数据的审核、筛选、排序等。当使用爬虫从网上获取数据时,获得的数据往往存在缺失、异常、格式不正确等情况。面对这些状况百出的原始数据,数据的预处理就显得尤为重要,数据分析师们往往也会在数据预处理上花费许多时间。
5.3数据的可视化
数据可视化是指将数据以图表的形式表示,并利用数据分析和开发工具发现其中未知信
息的处理过程。
数据可视化旨在借助图形化手段,清晰有效地将数据中的各种属性和变量呈现出来,使用户可以从不同的维度观察数据,从而对数据进行更深入地观察和分析。
常见的图表类型
直方图,又称作质量分布图,它是由一系列高度不等的纵向条纹或线段表示数据分布的情况,一般用横轴表示数据的类型,纵轴表示分布情况。
折线图是用直线段将各数据点连接起来而组成的图形,以折线的方式显示数据的变化趋势。
条形图是用宽度相同的条形的高度或者长短来表示数据多少的图形,可以横置或纵置,纵置时也称为柱形图。
饼图可以显示一个数据序列中各项的大小与各项总和的比例,每个数据序列具有唯一的颜色或图形,并且与图例中的颜色是相对应的。
在回归分析中,散点图是指数据点在直角坐标系平面上的分布图,通常用于比较跨类别的数据。散点图包含的数据点越多,比较的效果就会越好。
箱形图又称为盒须图、盒式图或箱线图,是一种用作显示一组数据分散情况资料的统计图
主要图表为:
结论:
- 热度高、价格低的品牌更容易受到消费者的青睐。
- 美妆类别中,护肤品的需求明显高于化妆品。其中清洁类、化妆水和面霜类销量最高;化妆品中底妆类、口红类销量是最高额。
- 男性美妆市场以护肤品消费为主,化妆品的消费极少。妮维雅品牌是最受男士喜欢的品牌。
- 销量和评论热度波动大致相同,评论热度上涨,销量也会上涨。
- 受物流、网络高峰等因素影响,再加上活动的提前预热,11号之前的几天会引来购买高峰;11号之后借着活动的余热,销量会呈现逐渐上升的趋势。