背景

基于某公司2017年6月份销售数据和会员信息,所采用的数据来源于某课程提供的数据集。
由于电商数据分析中涉及到的指标繁重复杂,数据集所提供的信息并不完整,本文依据已有数据信息对其中一部分指标进行分析。
本数据集包含原始数据集如下:
客户相关文件:

  1. UserInfo.csv:用户主表
  2. RegionInfo.csv:区域表

订单相关文件:

  1. OrderInfo.csv:订单主表

任务:

1、理解数据,并根据规则创建表

2、导入数据

3、数据清洗、字段处理

4、按照问题要求关联各表,查询结果

5、使用power pivot建立层次结构,并可视化

行动:

1、创建表(以userinfo为例)·

使用的是MySQL

数据分析报表 电销数据分析报表_数据

f

create table userinfo (
userid VARCHAR(6) not null default'-',
username VARCHAR(20) not null default'-',
userpassword  VARCHAR(100) not null default'-',
sex	INT not null default'0',
usermoney INT not null default'0',
frozenmoney	INT not null default'0',
addressid	VARCHAR(20) not null default'-',
regtime	VARCHAR(20) not null default'-',
lastlogin	VARCHAR(20) not null default'-',
lasttime	DATE not null 
);
desc userinfo;

2、导入数据(以userinfo为例)

load data local infile'D:\\data\\UserInfo.csv'
 into table userinfo 
 fields terminated by ','
 ignore 1 lines;
 
select * from userinfo; -- 检查数据信息
select count(*) from userinfo; -- 检查总行数1000
desc userinfo; -- 检查数据结构

3、数据清洗、字段处理
(1)筛选重复值、异常值:userinfo中sex,usermoney,frozenmoney值均为0,故此案例中可删除该字段

select distinct sex ,usermoney,frozenmoney from userinfo;

sex

usermoney

frozenmoney

0

0

0

(2)使用from_unixtime,substring,date_format处理时间字段格式

-- 创建新的日期时间字段并将时间戳转换为日期格式
alter table userinfo add regtime_ datetime not null;
update userinfo set regtime_=from_unixtime(regtime);
-- 删除原字段
alter table userinfo drop column regtime;

(3)用elt、interval组合方法对数据分组
将orderinfo中的字段orderamount分组

alter table orderinfo add ordera_range varchar(20);
update orderinfo2 set ordera_range=elt(interval(
OrderAmount,0,200,400,600,800),'0~200','200~400','400~600','600~800','>800');

结果示例:

orderamount

ordera_range

56.4

0~200

258

200~400

452

400~600

也用此方法对下单时间进行分段处理
(4)用join根据相应关系进行连接,创建新查询

select OrderID,
UserID,
ri.regionname as province_name,
ri2.regionname as city_name,ri3.regionname as district_name ,
ri4.regionname as country_name ,
from orderinfo oi
left join regioninfo ri on oi.Province=ri.regionid
left join regioninfo ri2 on oi.city=ri2.regionid
left join regioninfo ri3 on oi.District=ri3.regionid 
left join regioninfo ri4 on oi.country=ri4.regionid;

处理后的订单表表名为orderinfo2
(5)利用数据连接向导将数据库中的数据导入excel,并添加到模型,建立层次关系,进行可视化

结果:

数据分析报表 电销数据分析报表_数据分析报表_02


由上图分析得出:

  • 华东地区总销售额全国最高,占全国总销售额的33.56%,中南地区紧随其后,总销量占全国的33.51%
  • 华东地区总销量最高,其中浙江省贡献最多,为21%

    用户活跃度及支付行为分析:

    由上图可看出,
  • 用户活跃数最多的时段为半夜,此时段的下单量和支付比例都是最高的
  • 总体来看,支付宝的用户数是最多的,有377个用户

    从支付宝用户来看,用户下单额度主要集中在0~200之间,下单时间段主要集中在半夜,其次是傍晚

建议

  • 可以在华东地区的浙江江苏,中南地区的广东地区多进行促销活动,因为消费群体庞大,且消费者消费能力强,可以促进销量
  • 可以针对支付宝用户进行促销优惠活动,刺激低端消费人群进行消费
  • 通过下单活跃时间分析,可以合理的安排员工值班,削减不必要的成本