Quick BI(以下简称Qbi)做数据分析有5个模块:仪表板、电子表格、数据大屏、即席分析和自主取数。其中仪表板和即席分析比较接近于Power BI(以下简称Pbi)制作的报告。本文的比较对象,主要指Qbi的仪表板和Pbi的报告。
1 基本逻辑
个人认为,Qbi、帆软、Tableau等一系列BI工具,基本逻辑其实跟Excel透视表非常相似。Excel透视表基于一张基础表表,生成透视、拖拉指标、绘制图表。Qbi同样如此,区别只是更强大的数据整理能力,更复杂的计算字段,更丰富的图表样式和细节。因此,只要用过Excel透视表,Qbi就非常容易上手。
首先,用户无需花太多精力整理数据源表。因为只有一张表,这张表可以从IT人员整合的数据库输入,也可以自己手动加工Excel上传。底层数据源的整理工作,不如Pbi那么复杂。
第二,Qbi图表效果主要由样式内置功能决定,而正好Qbi的内置功能非常丰富且便捷。再加上Qbi的计算字段跟Excel函数类似,简单易懂。Qbi更便于用户直接探索数据,即基于现有的维度,现有的字段,通过丰富的图表样式和功能,看看能找到什么数据特征。
Power BI的底层逻辑与此差异很大。网上很多宣传文章说会用Excel就会用PowerBI,而以我个人学习和指导他人的经验来看,Excel经验对于上手Pbi并没有显著的作用。Pbi跟很多Excel透视表以及其他相似BI工具的侧重点不一样。Pbi三大突出优势:数据清洗(Power Query)、多表建模、自定义度量值(DAX)。
Pbi的基本逻辑是清洗数据后,在底层通过多表模型搭建数仓;然后从数仓出发,用DAX编制度量值构建数据指标中台;最后再出具可视化图表报告。小白上手可以简单略过数据清洗环节,但绕不开多表建模和度量值。构建多表关系模型,需要用户具备较强的数据库思维和设计能力,而这往往是很多Excel用户从未接触过的。再者,Pbi图表样式虽多,但每个都比较简陋,需要通过大量的度量值去获得分析结果和提升视觉效果(这方面可以参考武老师的文章)。度量值由DAX函数编写,DAX的逻辑比Excel函数绕得多。简单一个同比环比分析,Pbi初学者没几天功夫可能还真掌握不了。而用Qbi,当场点几下就出来了。
Pbi的特性,天然要求用户在使用中预先对分析思路有相对成型的框架,包括要分析什么,用哪些指标来分析,怎么获得这些指标,再溯源到这些指标通过哪些表来获得等等。因此相比Qbi,Pbi的前期工作明显更多。但是在搭建好这套模型之后,灵活性上又将有更大的优势。
2 度量值和计算字段
Pbi和Qbi在作图的时候,都需要拖拉入两类字段,一类是维度字段,一类是值字段。Pbi和Qbi的维度字段区别不大,都是直接从数据源表里拉取。值字段则有较大的区别。Pbi的值字段,需要拉入度量值。Qbi的值字段,则可以直接从数据源表里拉取,也可以像透视表那样,拉取新建计算字段。那么两者有什么区别呢?现在以毛利率为例简单阐释。
最基础的Excel透视表,按维度(年或品类)拉取毛利率时,由于毛利率本身是数据源表里的一列,所以计算合计毛利率时,透视表很自然地把各项毛利率直接相加,即
合计毛利率 = sum( 毛利率 )
导致错误结果,如下图所示:
Pbi的度量值可以有效避免上述问题。度量值的特点是本身并不存在于特定的数据源表中,只有在作图的时候才会根据图表上下文实际情况,实时计算并生成数据结果。在本例中,度量值重新根据合计的上下文环境去计算,公式如下,因此可以得出正确结果。
合计毛利率 = sum(毛利) / sum(销售额)
Qbi跟Excel透视表类似,直接拉取源表里的列,同样会得出错误的结果。为解决这个问题,Excel和Qbi都可以使用计算字段。写法与度量值一致,同样能得到正确的结果。简单总结如下:
3 同比环比等
以销售收入为例,光一个当期收入显然是不够的,我们往往需要进行对比分析,涉及年、月、季、日的同比、环比、达成率和累计;另外,我们还可能需要知道平均值、最大最小值等。当期收入的每一个衍生值,在Pbi里都需要单独写相应的度量值,而Qbi则有点类似于Excel的透视表,不需要额外建度量值,直接内置在图表控件中。除了Excel透视表有的合计、均值、极值、方差等,Qbi还提供了同环比和TopN。以往用Pbi做方案时,出图的前期必备步骤就是要花一两天时间把这些衍生度量值写好,而用Qbi就省事多了。
得益于此,Qbi图表里可以通过内置功能直接对比值,如下图所示。
4 父子层级结构
常见的案例如资产负债表,最高层级是资产、负债、所有者权益,资产下包括流动资产和非流动资产,流动资产下面再包含多个明细科目,每个上级科目的数值由下级科目计算而成(可以是合计,也可以有加减乘除或特殊运算),如下图所示:
对于这种情况,Pbi的经典教程往往需要花一整章的篇幅去介绍处理方法,涉及几个专用的函数,如Path, PathItem, PathLength, IsInScope, IsFiltered。需要写一套度量值去应对各种情况。
Qbi则直接很多。无需在计算字段上下太多功夫,因为趋势分析表里内置新建层级结构功能。点击日期维度右上角齿轮,即可进入指标树的管理界面。这里可以新建和管理源表中没有的结构,每个指标也有多种聚合方式。操作比较简便。至于能不能像Pbi的父子层级函数那样可应对各种情况,这个还有待后续研究。
本期分享到此为止,祝大家新年快乐,情人节快乐,我们下期再会。
本文分享自 PowerBI x Python 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!