1、选手介绍
Dana,LeZ数据分析师,BI探索型分析爱好者。
athlonk7,LeZ前数据分析师,一位老朋友,一位误入AI歧途的中年人。
2、参赛初衷
- 公司现在使用的BI还是5版本,6版本只是在本地星星点点的使用,希望借大赛的机会逼自己系统练习一把,探索下6版本的新功能和现有的业务报表是否能更好的结合。
- 数据分析是一个不断进化的领域,如果沉浸在自己的小世界里,不与外界交流,很快就会落后一大截。希望通过比赛,能够和同行交流心得,切磋技艺。学习下其它朋友们是如何解决问题、如何优化算法、如何为企业创造价值的。
- 同时,比赛更是一个学习的过程。我们想要看看自己在这个领域的真正实力,也想知道自己与其他选手相比,到底差距在哪里。
二、作品介绍
1、业务背景及需求
- 当疫情散去,2023年的景象并不如人们所预期的那样充满希望。企业和个人面临着更多挑战。在这种背景下,“降本增效”成为了每个人耳边的常态,也成为了每家企业努力追求的目标。
我们是探索者,LeZ数据分析师,LeZ是一家专注于玩具零售的公司。在东莞、厦门和深圳拥有11家直营门店。为了拓展业务领域,公司在2022年底收购了另一家玩具渠道商,这使我们成功进入了澳门、珠海、福州的市场,并在电商平台上开设了7家店铺。现在,公司总共有34家门店,其中包括27家线下店和7家电商店。
23年年初,公司完成了系统整合。从1-4月的销售数据来看,一切似乎都在朝着正确的方向发展。但在4月底的公司月度经营探讨会议上,我们从高层的讲话中明显感受到了一股紧迫感。外部环境的压力逐渐显现,公司需要更快地调整策略来应对。。为了响应“降本增效”的呼声,公司内部经过了多次的讨论和争议,最终锁定了两个关键点。
需求:
首先,是优化各职能部门的报表。这听起来可能不是一个技术性的改进,但背后的意义却远超我们的想象。传统的报表编制经常需要几个部门联合,消耗大量的时间和人力资源。而且,手工制作的报表往往伴随着误差,这对于决策层来说,是一个巨大的风险。通过将这些报表上系统、自动化,我们不仅可以确保数据的准确性,还可以大大缩短报表的编制时间,使员工可以将更多的时间和精力投入到更有价值的工作中。对人力成本的优化也有一定的帮助作用。
第二点,上线重点商品计划,这是一个直指LeZ公司核心业务的决策。玩具市场瞬息万变,每一款新玩具的上市,都可能引发一个新的市场趋势。如何在这种环境下,确保公司的产品始终领先于市场,是我们一直在思考的问题。只有通过优化产品结构,将重点放在那些市场需求强烈、利润空间大的商品上,LeZ公司才有望在激烈的竞争中占据有利位置。
2、分析思路
3、数据来源及处理
- 3-1、数据源说明:企业数据脱敏处理
- 3-2、数据清洗示例:
使用python建立了新旧名称的映射表字典,通过逐行读写数据,完成对商品名的批量处理(如下图示例,脱敏商品信息)
4、数据字段 与 数据处理
①事实表:订单明细表:
②维度表:
A. 商品信息表:
B. 门店信息表:
C. 会员信息表(会员基础信息表、付费会员表,共两张表):
③ 目标表:
A. 门店月度目标:
B. 品牌月度目标
5、可视化报告
重点商品专案计划出来后,第一步是选品,为此我们建了一个选品模型,如下图:
Part1 - 选品模型
1-1 选品矩阵:
依据品牌的年度份额和毛利率对每个品牌划分区间,份额和毛利率双增长,且毛利高于大盘34%的品牌优先纳入候选商品池。
从选品矩阵图中可发现,Vtech市场份额最高,但其份额从21年的32%下降至23年的25%,且其毛利率仅31%,低于大盘平均的34%,故未选中。综合来看,Toys、Purple Plume、Quick Joy三个品牌提升空更大。
1-2 商品毛利ABC
从ABC分析看,截止4/30,Toys、Purple Plume、Quick Joy三个品牌毛利额合计已基本与Vtech持平,若后期作为重点品牌运营,投入更多的促销资源,毛利额大概率可以赶超Vtech。
综上,选品结果:Toys、Purple Plume、Quick Joy
P.S 品牌份额的计算使用DEF函数,先用DEF_ADD计算出每个品牌的销售额,第二步计算当月所有的销售额,相除即为品牌份额。
DEF_ADD(SUM_AGG(${销售额}),${品牌}) / DEF(SUM_AGG(${销售额}),YEAR(${交易日期}))
品牌毛利率的计算逻辑:
DEF_ADD(SUM_AGG(${毛利额})/SUM_AGG(${销售额}),[${品牌}])
选品结束后,需要逐月分析专案效果,经与业务人员探讨&综合公司的重点指标,故制作了如下专案报表模板,月更即可。
Part2 - 专案效果分析
2-1 专案运营后,各品牌的销售和毛利达成均在110%,完成较为出色。再各品牌的份额是否有提升?从数据结果看,
Toys从5月起,份额维持在16%-17%,在整个大盘增长的情况下,份额可以从4月份的15%继续攀升,足以说明此品牌的增长颇佳。
Purple Plume从5月起,份额维持在9%,4月份这个数字是8%。Quick Joy从5月起,份额维持在11%,4月份这个数字是9%。均达预期!
2-2 从毛利额及会员拆至月看,5月&6月增长明显,拆至周的角度看(可跳转查看),22周(5/28-6/3)6/1儿童节出现了爆发增长。
2-3 综合新老客 & 复购率的维度看,复购情况并不理想,说明较多的销售贡献来自人数的增长,开拓更多的新客有力的支撑了销售和毛利的达标。
专案分析最终仪表板呈现:
日报,数据解读不是核心,重点有三个:
① 展示高层关注的重点指标(销售、毛利、达成)
② 自动化发送(FineBI的定时调度)
③ 数据预警
在设计之初,我们的初心是:通过参数来实现自定义筛选日期,展示出对应的销售额、毛利额、及其对应的同环比。甚至达成进度的警戒线就是日期进度动态实现,用以对比当前达成和日期进度的差距,
奈何建了一堆指标之后,发现通篇用参数,很难实现。比如,日期区间一旦筛选,用参数算的日期进度就算错了,识别不出来区间日期。
探索失败,乖乖回到原路。。。
先看 ① 重点指标
指标卡展示,辅助图形(哭脸、箭头等)来展示销售、毛利、达成。
跨表维度计算指标,设计了主题模型建模(星型模型),在设计门店、商品维度的展示时,可以直接跨表选字段,
可视化亮点:仅展示排名靠前、以及靠后的门店,但排序数字正常(1/2/3。。。32/33/34)
第一步:计算固定排序,如下图: DEF函数多层嵌套。
DEF(COUNTD_AGG(${门店名})+1,${门店名},(DEF(SUM_AGG(${销售额}),${门店名})/DEF(AVG_AGG(${门店销售额目标}),${门店名})) > EARLIER(DEF(SUM_AGG(${销售额}),${门店名})/
DEF(AVG_AGG(${门店销售额目标}),${门店名})))
计算结果是1.2.3。。。
第二步:相对于要展示的%,DEF的固定排序数字过大。需要除以10000,将其调整为0.0001。其它如下图设置即可。
② 自动化发送(FineBI的定时调度)
③ 数据预警(每日定时邮件)
P.S. 预警值的设置只能是常量,没办法根据日期进度做运算。
日报最终仪表板呈现:
三、参赛总结
1、FineBI工具
① 不得不提的DEF函数,在仪表板算指标是真的方便呀~
② 新增计算字段可以整个分析通用,比5.0的只能在单个组件用方便多啦~
③ 主题模型建关系后跨表选字段赞;
① 组件并排展示,仪表板需要的组件比较多时,组件和仪表板来回切真麻烦呀~
② 树标签没办法自适应
现有的模式:
想要的格式,但筛选项显示不出来
③ 通过时间参数控制整个仪表板的筛选,比如日期进度、自定义同环比、警戒线,但实现不了
举例:日期进度,是用参数计算的,一旦日期区间选择两个,这里的进度就计算错误了。
④ 预警值的设置只能是常量,没办法根据指标做运算。
2、参赛心理路程
在大赛即将结束的时候,我们才决定参赛,高压、仓促,连续一周的挑灯夜战,几乎到了崩溃的边缘,好几次,我默默问自己:要不要放弃?
心说:放弃算了!
大脑说:不要放弃!扛过去!
几番拉扯中,大脑战胜了心。继续挑灯夜战,一路探索。
探索着探索着,发现我给自己挖了个大坑(见“哪些想做,但实现不了的”),随后,给自己了一个忠告:紧急时刻,千万不要搞创新,否则很容易死翘翘。。。忠告完毕,乖乖切回稳定模式。结果,临近交稿的最后一天,又忍不住在探索新功能。。。
这个心理路程,又让我反思了两点:
1、论目标的重要性!
2、要过程还是要结果?
心脑大战又开始上演。。。
但感触最深的应该是不到最后一刻,绝不放弃,所以,才有了今天的作品。
在我们还在努力完成作品的时候,陆陆续续看到论坛上上传了很多优秀的作品,对比各位大神,我们的作品似乎没那么优秀,但就像跑马拉松,此刻对我们来说,重点不是跑进top,而是,我们在各种挑战下,坚持跑到了终点… |