零售商超数据分析

一、背景介绍和分析目的

  移动互联网、大数据、人工智能、物流等技术的快速发展,传统零售业态与电商平台的深度融合,催生出新兴的业态和新商业模式。同时消费者发生了变化,80、90后成消费主力,他们对高质量商品的需求快速增强,对服务性消费的需求潜力也在不断释放,购物时越来越追求方便快捷,购物渠道从割裂走向融合。人们的消费观念不断转变,为迎合消费者新需求,线上线下融合成为商超行业发展趋势,众多新兴技术运用到商超零售的各个环节,商超零售全链条实现数据智能化升级,提升效率,优化体验。在此背景下,传统线下零售商如何更好地提升顾客购物体验?线上零售商如何增加顾客消费粘性?深度挖掘用户价值变得越来越重要,需要我们从数据角度深度挖掘出它的价值,为商业提供决策。

  提出问题:

  1. 最近几个月运营效果如何?有什么异常处吗?

  2. 针对某一个专题点进行分析,用户行为有什么特征,且如何来划分?

二、分析数据

2.1 数据来源

   两家零售商超店铺2016-2017两年真实数据

2.2 熟悉数据

   

    

    

    

    

    

2.3 数据清洗

  零售数据相对其他行业数据来说还相对干净,我们先看一下订单表(orderlist)信息,其他表同理

  2.3.1 缺失值处理:

    可以看到,只有memberid字段有 null , 这是由于有些客户没有注册会员。SQL清洗数据太不方便了, 我们改用Python快速查看数据描述。

  查看一下memberinfo 表中信息

 1 # 将 demo 数据库中 goods 表前 1000 条记录导出为.xlsx 文件保存到电脑本地、 然后再导入到 Python 中。
 2 import pymysql
 3 import pandas as pd
 4 sql_cmd = "SELECT * FROM demo.MemberInfo ; "  # 大小写敏感
 5 db = pymysql.connect(host = "xxxxx", user = "xxxxx",password = "xxxx",db = "demo" ,charset = "utf8")
10 # host:数据库地址/本机使用localhost  
11 # user:用户名  
12 # password:密码  
13 # db:数据库名  
14 # charset:数据库编码,一般为UTF-8
15 #注:如果用户名或密码中包含特殊符号@、%等符号时,需要修改密码方可链接
16 df = pd.read_sql(sql_cmd, db)
17 df.info()

  可以看到没有任何字段有缺失值 而且都是非空数据, 一共有12187条纪录

  2.3.2 重复值处理

  

    可以看到没有重复值,根据订单id 来筛选

2.4 数据分析并可视化

   2.4.1  2017年每月份两家店的利润和销售额。

 1 -- 2017年每月的利润和销售额
 3 SELECT  A.ShopID 
 4                 ,year(A.SDate) as ''
 5                 ,MONTH(A.SDate) as '' 7                 ,sum(A.SaleValue) as '销售额'
 8                 ,sum(A.SaleValue)-sum(A.CostValue) as '利润'
 9 FROM    demo.OrderItem as A 
10 WHERE    year(A.SDate)= 2017 11 GROUP BY   A.ShopID 
12                     ,year(A.SDate)
13                     ,MONTH(A.SDate)
14                     ,day(A.SDate) 
15 ORDER BY  year(A.SDate)
16                  ,MONTH(A.SDate)
17                  ,day(A.SDate);

 

 

 上传中。。。。。

三、结论与建议

 

posted @ 2019-09-16 13:36  找工作好爽啊哈哈哈呜  阅读(906)  评论(0编辑  收藏  举报