Adventure项目总结

一、项目概述

1、成果预览

最近回顾了Adventure项目,在此记录、总结分析实现过程。该项目主要任务是利用python的pandas、numpy包从MySQL数据库中读取原始数据进行加工、聚合、分析,再利用Power BI进行dashboard的搭建。再以聚合后的数据为基础制作PPT,汇报分析结果,为业务团队自主分析提供数据支持,改进工作。
dashboard预览:Dashboard看板链接

PPT预览

2、背景介绍

1)公司背景

Adventure Works Cycle是国内一家生产和销售自行车及和相关配件的制造公司。利用每日商品销售及相关客户信息数据,获取商品销售趋势、地域分布情况以及简单用户画像,进行可视化展示,为运营人员提供自主分析工具。

2)产品介绍

公司主营业务有自行车(主要产品),服装,配件

  • 自行车:包括公路自行车、山地自行车、旅游自行车三大类
  • 服装:包括帽子、手套、袜子、背心、运动衫等
  • 配件:包括头盔、挡泥板、车架、清洁工、瓶子和笼子、车胎等
    这里主要分析的是自行车业务。

3、数据来源

1)ods_sales_orders 订单明细表

2)ods_customer 每日新增用户表

3)dim_date_df 日期维度表

二、python处理数据

1、生成dw_order_by_day表

导入相关模块,连接数据库

step 1:读取ods_sales_orders(订单明细表),生成sum_amount_order(销量订单聚合表),求总销售金额/客单价

step2:利用空列表及循环生成对应随机值,与销量订单聚合表合并形成sum_amount_order_goal(销量订单聚合目标表)

step3:读取dim_date_df日期维度表

step4:对数据进行融合,生成dw_order_by_day表

step5:删除旧的dw_order_by_day(每日环比表),存储新的dw_order_by_day

2、生成dw_amount_diff表

step1:读取dw_order_by_day表

step2:求取各阶段的总金额

step3:求取各阶段的总订单数

step4:求取各阶段的总金额、订单数的同期对比数据

step5:删除旧的dw_amount_diff表,存储新的dw_amount_diff表

3、生成dw_customer_order表

step1:读取最新日期的ods_sales_orders(订单明细表)

step2:读取每日新增用户表ods_customer

step3:读取日期维度表dim_date_df

step4:对数据进行聚合

step5:存储数据

三、搭建Dashboard

1、可视化看板布置

1)可视化工具:此处使用的可视化图表有切片器、卡片图、KPI图、环形图、子弹图、表格、地图等;
2)筛选器:用于区域、日期等字段信息的筛选;
3)书签:将按钮操作与书签相结合,完成不同页面的导航、跳转功能

2、报表展示

1)主页

  • 展示今日销售金额及目标完成情况、订单量、客单价以及同比情况;
  • 表格列明详细销售情况
  • 环形图展示各个种类产品销售占比情况- 利用地区和城市切片可以动态展现不同城市的销售情况
  • 地图和气泡图结合展示各个城市销售情况



    2)趋势详情页

  • 通过切片器筛选最近一段时间的销售变化趋势
  • 动态展示最近15天销售订单量完成情况
  • 动态展示最近15天销售金额以及目标完成情况
  • 动态展示最近15天客单价变化趋势



    3)城市详情页

  • 切片筛选区域和城市,动态展示不同地区销售情况


四、报告输出

1、指标搭建

1)目的

  • 优化销售策略,调整产品结构,才能保持高速增长,获取更多的收益,占领更多市场份额
  • 根据需求分析2019年11月自行车销售情况,为精细化运营提供数据支持

2)数据来源

dw_customer_order 产品销售信息表

ods_customer 每天新增客户信息表

dim_date_df 日期表

ods_sales_orders 订单明细表

3)分析思路

从整体的角度:分析2019.1—2019.11自行车整体销售表现

从地域的角度:分析11月每个区域销售量表现、11月TOP10城市销售量表现

从产品的角度:分析11月类别产品销售量表现、11月细分产品销售量表现

从用户的角度:分析11月用户年龄分布及每个年龄段产品购买喜好、11月男女用户分布情况

热销产品:分析11月TOP10产品销量榜、11月TOP10销量增速榜

2、python加工数据

1)整体销售表现

读取数据

观察字段属性信息

增加月份字段以便于进一步分析

筛选自行车数据

用groupby进行分组,求出每月订单量和销售金额总和,并进行排序

求每月订单量环比

转为dataframe形式

同样求出每月销售金额环比,并转为dataframe,同时对两个环比字段进行重命名

存入数据库

2)地域销售表现

筛选10月、11月数据后进行分组求和

求出不同区域销售环比情况

存入数据库

按城市分组并筛选销量前十的城市

筛选10月、11月数据并计算月销售金额

计算环比

存入数据库

3)产品销售表现

求出月销量并合并表格

计算细类产品销售占比情况并重命名

查看自行车产品种类

求出山地自行车具体型号销售数量以及种类月销量,并进行合并

同样方法对公路自行车和旅游自行车进行处理

计算销量环比

计算累计销量

合并表格并存储

4)用户行为分析

读取信息


用户年龄
合并表格,截取年份信息

计算用户年龄并进行分层

计算年龄比率,以便统计各年龄段占比情况

用户性别
观察性别分布情况并进行字段关联

5)热点产品分析

11月产品销量TOP10产品,销售数量及环比
计算产品销量并排序


切片、筛选信息,找出本月销量top10产品

11月增速TOP10产品,销售数量及环比
切片、筛选信息

合并表格

存储数据

3、PPT制作

通过上述加工,将存入MySQL数据库的数据接入Power BI,绘制图像,从而完成自行车业务分析报告


五、尝试使用Hive和SQL完成ETL过程

1、使用sqoop导数到hive数据库生成 ods 层数据

以生成dim_date_df表为例

ods_sales_orders表、ods_customer表亦同样处理

2、使用hive库进行数据汇总加工生成dw层数据

以ods.dw_order_day为例进行数据加工

3、sqoop导出分析结果到mysql

以导出dim_date_df表为例
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,723评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,003评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,512评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,825评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,874评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,841评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,812评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,582评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,033评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,309评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,450评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,158评论 5 341
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,789评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,409评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,609评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,440评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,357评论 2 352

推荐阅读更多精彩内容

  • 最近刚刚做的adventure项目,接下来把我做项目的过程和步骤展示出来,方便大家学习理解。 以下先展示本次项目的...
    lwj_5b48阅读 914评论 0 2
  • 一、项目背景介绍 Adventure Works Cycles是Adventure Works样本数据库所虚构的公...
    Helluin92阅读 297评论 0 2
  • 分析成果的链接 本文目录:一 项目背景介绍二 数据整理和罗列分析指标三 使用Python聚合数据并实现自动更新四 ...
    胖波波玻璃球阅读 669评论 0 1
  • 一、项目概况 1. 成果预览 分析概述:本文是对Adventure项目的总结,记录项目分析与实现过程,主要任务是对...
    kh辰辰辰阅读 219评论 0 0
  • 本文是对Adventure Bicycle案例的一个总结,记录了整个项目需求分析与实现的过程,主要任务是使用Hiv...
    Bourton阅读 696评论 0 3