开篇彩蛋:为什么同比环比是数据分析界的“相声搭档”?
想象一下,同比是那位稳重的老前辈,讲述着“去年今日”的故事;而环比呢?它就是那个活泼的小鲜肉,天天追着你问:“嘿,今天你比昨天进步了吗?”这对搭档,一唱一和,让数据不再沉闷,让趋势跃然纸上!
SmartBI里的同比环比:多种实现方式让你选择!
接下来,我们看看三者有哪些区别和内在联系?
实现方式
|
维度
|
透视分析/仪表盘
|
电子表格/Web电子表格
|
1、快速计算
|
是否支持
|
是
|
基于数据模型汇总查询时设置
|
难易度
|
易
|
适用场景
|
数据源要基于数据模型,可对度量字段进行快速计算,即对度量指标进行占比、排名、同比、同期值、环比、前期值等计算,适用于自助分析场景;
|
适用人员
|
数据分析师,报表工程师,业务人员
|
优势
|
操作简单、灵活
|
劣势
|
实现场景有限
|
2、数据模型-计算度量(向导)
|
是否支持
|
是
|
难易度
|
中
|
适用场景
|
数据模型的计算度量通过向导的实现方式,是基于计算度量的函数的基础进行了封装,可以实现同环比和常用的场景,比如:四则运算,时间计算-前期/同期示例,时间计算-累计值,时间计算-前期/同期累计。
|
适用人员
|
数据分析师,报表工程师,业务人员
|
优势
|
在界面上通过拖拉拽维度或度量无需任何代码,即可实现一个新的计算度量,分析报表时可以直接复用计算指标
|
劣势
|
实现场景有限
|
3、数据模型-计算度量(函数)
|
是否支持
|
是
|
难易度
|
难
|
适用场景
|
数据模型的计算度量通过函数的实现方式,不仅可以实现同环比,还可以通过函数的各种组合应用于复杂使用场景,比如:计算当前分类的销量在总销量中所占的比例,计算上一年年末数据等;
|
适用人员
|
数据分析师,报表工程师
|
优势
|
分析报表时可以直接复用计算指标,扩展性强
|
劣势
|
技术要求高
|
特点
|
不被存储、在使用时才计算(因此会根据上下文筛选而变动)、消耗CPU
|
数据模型:搭建你的“时光机”
在SmartBI里,数据模型就像是你的私人“时光机”。你需要建一个时间维度表,从年到月,再到日,一应俱全。然后,定义个同比、环比的计算指标,就像给数据穿上“时光鞋”,轻松穿越,对比过去,预见未来!
1、快速计算
产品的不断更新迭代,最近新推出的快速计算功能在数据分析应用可以更快的实现同比和环比的功能,让同比环比分析变得更简单、更智能!
透视分析:在表格/度量区的销售量字段上右键选择 快速计算 > 同期 > 同期值,获取到各月份的相比上年各月份的同期销售数据,上"笑"果:
前提条件:数据模型中创建时间维,并把时间维字段添加到透视分析的行区/列区/过滤条件区。
更多详情:https://wiki.smartbi.com.cn/pages/viewpage.action?smt_poid=43&pageId=112784599
仪表盘: 在其中一个 销售额 字段上点击,选择 快速计算 > 同期>同期值 ,在另一个 销售额 字段上点击,选择快速计算 > 同期>同比 ,上"笑"果:
前提条件:业务数据集中 创建时间层次 ,并把时间层次字段添加到当前组件上或筛选条件上。
更多详情:https://wiki.smartbi.com.cn/pages/viewpage.action?smt_poid=43&pageId=114985712
电子表格:可以通过数据模型新建数据模型汇总查询,参考透视分析(同上)方法生成相应的同比和环比,然后在制作报表哦~
1、excel电子表格:
2、web电子表格:

另外:也可以通过在EXCEL里面写函数的方式实现同环比,更多详情参考:https://wiki.smartbi.com.cn/pages/viewpage.action?smt_poid=43&pageId=100250748
2、数据模型-计算度量(向导)
我们还可以根据使用场景的不同来实现同环比,接下来我们看看计算度量实现同环比,通过配置向导的方式如何来实现?
同比-同期值实现方式,上“笑”果:
1、先创建时间层次维度
2、创建计算度量:命名为:“同期值(合同金额)”,并且计算类型选择”同期值“,选择之后会自动长出需要输入的参数:
- 计算类型:计算类型产品内置目前包含:数学运算、时间计算、汇总计算、其他;
- 基值:只能拖入度量或者计算度量;示例从右侧拖入:“合同金额”度量;
- 时间层次:可以拖入具体的时间层次,比如年、年季、年月、年月日等;示例从右侧拖入: “年”层次;
- 偏移数:必填,只能输入正整数,默认1;在行/列轴上,当前时间层次是“年”代表上一年;如果是“年季”,代表上一季度;如果是“年月”,则是上个月;如果是“年月日”则是上一天; 填2则代表上2年/年月...,依次类推。
更多详情:时间计算-前期/同期示例
3、数据模型-计算度量(函数)
当以上方式都无法满足需求时,接下来我们看看计算度量实现同环比,通过配置函数的方式如何来实现?
同比-月同期函数实现方式,上"笑"果:

通过计算度量的方式,实现月同期函数的方法:

说明:
- 【年】:表示按照“年”层次来确定周期间隔;
- 1:表示周期间隔,1就是表示上一年;
- 【年月】:表示当前的年月,通过CurrentMember获得“年月”层次下的当前成员
- 【销售量】:必须需要度量来配置,若表达式中没有度量,则默认匹配“度量面板”中的第一个度量。
同比-月同比函数实现法,上"笑"果:

通过计算度量的方式,实现月同比函数的方法:

说明:需要使用上面预定义的月同期作为输入;
- 【月同期】=0:表示判断的依据
- NULL:根据上面的依据,返回true的取值;
- 【销售量】/【月同期】:根据上面的依据,返回false的取值;
更多内容详见:
https://wiki.smartbi.com.cn/pages/viewpage.action?smt_poid=43&pageId=111879414
环比-月环期函数实现方式,上"笑"果:

通过计算度量的方式,实现月环期函数的方法:
说明:
- 【年月】:表示按照“年月”层次来确定周期间隔
- 1:表示周期间隔,1就是表示上一月;
- 【年月】:表示当前的年月,通过CurrentMember获得“年月”层次下的当前成员
- 【合同金额】:必须需要度量来配置,若表达式中没有度量,则默认匹配“度量面板”中的第一个度量。
月环期增长函数实现方式,上“笑”果:

通过计算度量的方式,实现月环期增长函数的方法:
月环期增长率函数实现方式,上“笑”果:

通过计算度量的方式,实现月环期增长函数的方法:
说明:需要使用上面预定义的月环期增长和月环期作为输入;
- 【月环期】=0:表示判断的依据
- NULL:根据上面的依据,返回true的取值;
- 【月环期增长】/【月环期】:根据上面的依据,返回false的取值;
另外,还有一些复杂场景只能通过计算度量解决的示例:比如,报表查询涉及时间层次,勾选字段最小粒度到年月日,但是希望获取月份层次的度量前期值,"笑果":
涉及时间层次汇总处理,选用计算度量,通过计算度量知道日期的CurrentMember.parent.PREVMEMBER值实现;

更多详见:
https://wiki.smartbi.com.cn/pages/viewpage.action?smt_poid=43&pageId=111879452
注:以上关于快速时间计算,不管时间维度是参数还是报表列表中的一员,都需要时间层次维度的参与哦~
好啦,今天的“SmartBI同比环比分析相声大会”就到这里啦!希望你在笑声中,学会了如何让数据“笑”出真相!记得点赞、分享哦,让更多的人加入到我们的“数据相声”大家庭中来! |