开始本章翻译时,是5月初。当时并不知道平平无奇的5月Power BI会带来一大波更新,尤其是大杀器“字段参数”(字段参数参考文章)。
—— —— —— —— —— —— —— —— —— —— —— —— —— —— —— —— —
数据分析表达式 (DAX) 语言是一种公式语言,Data Analysis Expressions 数据分析表达式,简称DAX表达式,其允许用户定义自定义计算。DAX 包含一些在 Excel 公式中使用的函数,此外还包含其他设计用于处理关系数据和执行动态聚合的函数。
在一些数据分析场景中我们经常遇到获取topN统计的问题,例如统计销量topN的店铺对应的总销售额、统计订单量TopN的门店总销售额等等。针对这种TopN问题的分析,在Power BI中我们需要使用TOPN函数,TOPN函数可以返回指定表的前N行数据。之前我们学习过RANKX函数,RANKX可以根据指定的度量值表达式来对数据进行排名没有办法获取前几名数据,TOPN可以获取前几名数据,但是不会对数据进行排名。
编写 DAX 公式时要掌握的核心概念是上下文。DAX 作为一门动态数据分析语言,与 Excel 函数、SQL 查询 和 Power Query 脚本有着根本不同的原因就在于上下文的概念。以上所述的所有其他语言的公式只会在数据发生变化时才会返回不同的结果(除了一些例外情况,例如使用参数时),但是单个 DAX 公式就可以同时提供多个不同的结果,具体取决于您使用它的位置和方式,也就是:上下文。
Power BI中DAX函数非常多,功能非常强大,下面结合一些实际场景来讲解DAX一些常用的函数,这些场景包含求和、计数、相除、排序、累计、环比、同比,为了更方便后续的可视化展示数据,我们新创建可视化展示的页面,创建一个新表存储后续展示的度量值,具体操作如下:
Power BI 模型的真正强大之处在于通过使用 DAX 语言进行计算。虽然许多 Power BI 用户专注于模型并试着完全避开使用 DAX,但是除了最简单的基础聚合运算以外,其他所有的计算都需要通过 DAX 来实现。而且,你迟早会在 Power BI 中遇到更复杂的计算需求。根据我们的经验,典型的情况会是:你精心制作的一个 Power BI 报告初稿,会引出有关这些数据的越来越多、越来越复杂的问题。
在 Power BI 中显示一个大型的表,并不擅长,因为 Power BI 更倾向于制作高度聚合的可视化图表,但如果就是希望做到可以显示大篇幅的分页表格怎么办呢?本文就是来给出答案的。
有伙伴说一段时间没有更新文章,这一次顶十次。明明能拆成十期的文章,非要一次写完,没办法,厚道。
销售数据表记录了咖啡订单,包括字段:订单编号、订日期、门店、产品ID、顾客、数量。
本文来自社区伙伴对《DAX 权威指南(第二版)》的学习笔记,有问题可以留言或联系BI佐罗修改,感谢你的支持。
有一个数据集,包含四张工作簿,每个工作簿是一张表,其中可以销售表可以划分为事实表,产品表,日期表和门店表为维度表。 工作簿名称、字段含义和数据集的对应关系如下图:
以下内容节选自《DAX权威指南:运用Power BI、SQL Server Analysis Services和Excel实现商业智能分析》一书!
本系列是数据可视化基础与应用的第02篇,主要介绍基于powerbi实现一个连锁糕点店数据集的仪表盘制作。
文章背景: 最近在学习DAX权威指南第19章,介绍了DAX查询引擎的组件,解释了如何使用DAX Studio获取与特定DAX表达式相关的查询计划和性能计数器的信息。这些知识是优化任何DAX公式的基础。
以下内容节选自《DAX权威指南:运用Power BI、SQL Server Analysis Services和Excel实现商业智能分析》一书! ---- --正文-- DAX(Data Analysis eXpressions),即数据分析表达式,是Microsoft Power BI、Microsoft SQL Server Analysis Services(SSAS)和Microsoft Power Pivot for Excel中使用的编程语言。 它创建于2010年,是随PowerPivot的
👆点击“博文视点Broadview”,获取更多书讯 传统的Excel单表虽然可以有100万行数据的承载量,但是在实际分析时,20万行的数据就已经让传统的Excel非常吃力了。 但是,如果使用Excel中的Power Query和Power Pivot商务智能组件,即使是上百万行数据,也可以在短时间内快速完成处理和分析。 Power Query在Excel和Power BI Desktop中都是内置组件,并且管理界面和知识体系保持了高度一致。 其实,Power BI中的Power Query和Power P
兄弟们慢点,4天发布6项更新,你们不考虑下大家有时间学不,还有竞争对手会蒙圈的~ 产品经理无奈回复:这不是老大你安排的嘛。
我们对本月的更新感到非常兴奋!我们发布了两个最重要的社区请求:Power BI Pro的增量刷新和分层切片器。此外,我们还对新功能区和一些新的DAX功能进行了一些改进。自上次发布以来,AppSource上发布了一些新的Power BI视觉效果,因此请务必尝试一下!如果您想了解本月的所有更新和增强功能,请查看完整的博客。
👆点击“博文视点Broadview”,获取更多书讯 本文将介绍DAX中的基础表函数。 表函数是DAX中的一种常规函数,它返回的结果不是一个标量值,而是一个表。当需要编写DAX查询和迭代表的高级计算时,表函数非常有用。本文会介绍相关的计算示例。 本文的目标是介绍表函数的概念,而并非提供所有DAX表函数的详细说明。 《DAX权威指南》一书的第12章和第13章中介绍了更多的表函数。本文将解释DAX中最常见和重要的表函数的作用,以及如何在常见的场景中,包括标量表达式中使用它们。 01 表函数介绍 到目前为止,你
那么,如何实现呢?本文介绍两种方式。喜欢看视频的读者可以直接跳过文字,下拉到视频操作。
所谓增量刷新,是指增量刷新数据。一般情况下,在PowerBI或PowerBI Desktop中点击【刷新】按钮,会将数据源的数据全部刷新一遍,如果数据源数据很多,而每次变化的很少,例如只有最近一日发生变化,那这种不问青红皂白就直接全部刷新的方法显然会耗时耗力。很可惜在默认情况下,PowerBI就只支持这种数据刷新方式。
几乎所有的报表模型都涉及到日期和时间,因此要创建Power BI报表,日期表就必须得有。虽然最新的Power BI版本已经可以自动为每一个时间列创建日期表。
文章背景: 在表缺少主键无法直接创建关系,或者需要借助复杂的计算才能创建主键的情况下,可以利用计算列来设置关系。在基于计算列创建关系时,循环依赖经常发生。下面先介绍一个示例,然后讲解循环依赖产生的原因,以及如何避免空行依赖。
第一篇是关于Power BI连接数据方式的对比。这是个老生常谈的话题。微软官方考试Exam70-778教材的第一章,就是重点介绍这个方面。这种基础性的知识点繁琐而且枯燥,就像一本字典,只有用到的时候才会去查阅。
之前已经简单与大家聊过 Power BI 中的分组问题了,近日朋友又问了一个实际工作中的问题,恰巧也与分组有关,便整理之后,与众位朋友共享,再谈 Power BI 分组的博大精深。
DATESBETWEEN函数隶属于“时间智能函数”,属于“表”函数。可以用作生成固定范围的日期,也可以用来作为限定条件来对聚合计算进行限制。
TOP-N分析法通常用来分析客户、店铺或产品对于整体的贡献度问题。本节内容我们需要指定N个门店,分析这N个门店的产品销售总金额或毛利润对于整体的贡献度,如图所示。 在这个模型中,我们可以根据实际业务的需求,去个性化地选择以产品销售总金额或毛利润为观察对象,分析每个大区的前3名、前5名、前10名及所有门店的业绩对于整体业绩的贡献情况。 该模型主要的功能在于可以根据选择的指标动态地进行筛选,方便我们实时把握贡献最大的TOP-N的门店,开展有针对性的经营活动。下面介绍一下这个模型的具体的建立步骤。 第一部分:数
分别表示月末最后一天/季度末最后一天/年度末最后一天。还记得白茶之前曾经写过关于半累加的文章么?如果对于CALCULATE函数使用不习惯,那么可以尝试使用本期这三个函数。
首先数据量可能很大,超出Excel行数限制,比方一亿行;数据的种类很多,同一报表有的数据来自数据库,有的来自本地文件,有的来自Web等等。
文章背景:在工作中,有时需要提取同一日期的最后一条记录。比如每个客户的最后一次下单记录,或者每个产品最后一次卖出记录等。
TOTAL函数系列共包含三个函数:TOTALMTD函数,TOTALQTD函数,TOTALYTD函数。
PP中,基于函数来完成,其使用的是DAX语言。大部分的操作都是在关联筛选后作出的计算和分析。
DAX格式化最近在社群里听到有人讨论,在小必老师的公号上也做了总结性推文介绍(其中也介绍了PBI催化剂的方法)。
If you are dealing with Power BI/Power Pivot, it doesn’t take long before you encounter the DAX language for the first time. Jeffrey Wang is Principal Software Engineer Manager at Microsoft and is considered the father of DAX and the VertiPaq engine behind it.
数学函数系列,顾名思义,是一些我们在学生时代经常使用的数学算法在PowerBI中的应用。
文章背景: 最近在学习DAX权威指南第17章,介绍了运行DAX查询的引擎内部架构。DAX查询可以完全在存储于内存的模型上运行,也可以完全由原始数据源运行,还可以混合使用这两种方式。
PowerBI中的权限控制是分层次的,具体请以官方文档为准。但为了便于快速理解,这里特此编制了一个权限结构图:
举个例子,比如我们刚刚做了一个报告,想截图某视觉对象到PPT中,但是筛选器可能离着该可视化比较远,如下图:如果截上面柱状图,我们可以将年度切片器一起截取下来,但是如果你想单独截取下面的柱状图放到ppt里,别人根本不知道这张图想表达什么意思:
这个月我们有很多令人兴奋的发布。UserVoice上我们最需要的两个功能在本月发布,地图热力图和单选切片器。此外,改进的建模视图在本月GA(正式发布)。另外还有新的DAX函数和对现有函数的改进,以及按钮和选择面板也得到了增强。
使用过Excel Power Pivot、Power BI或者SQL Server Analysis Services的小伙伴,一定惊叹于它强大的数据存储和运算能力。 而在这些工具中,你都可以使用DAX对数百万、上千万行甚至更多的数据展开灵活的分析。 DAX,是一门跨Excel、商业智能和企业级工具的分析语言。 就像它的全称Data Analysis eXpression所描述的那样,DAX是一门用于数据分析的函数式语言。 是的,DAX和我们所熟悉的Excel公式都是基于函数的表达式,为了便于用户快速上手,
如果让我来讲的话,BI工具都是很简单的,会一个就会很多了。两小时入门power bi已经算是很慢了,其他bi工具,比如fine bi,可能十分钟足矣。
有时为了节省页面空间,让当前报表提供更多的信息,经常会有这样的设计,即提供一些选项给报表使用人,当报表使用人选定某个项目时,当前报表才显示该项目的信息,如下:
SUMMARIZE执行两个操作:按列分组和添加值列。使用SUMMARIZE对表进行分组是一个安全的操作,而使用SUMMARIZE添加新的列可能会导致难以调试的意外结果。
SQLBI的工具,有兴趣的可了解下,需要点英文阅读能力:https://www.sqlbi.com/tools/analyze-in-excel-for-power-bi-desktop/
通过"日期偏移"来解决"因中美习惯不同而导致的PowerBI相对日期切片器周分析错误"问题
小勤:上次说可以通过对逆向连接表编辑DAX公式按需要返回模型中的数据(具体见文章《链接回表,让Power Pivot和Excel的互动更加精彩》),具体是怎么弄的?
👆点击“博文视点Broadview”,获取更多书讯 《DAX权威指南:运用Power BI、SQL Server Analysis Services和Excel实现商业智能分析》 一书被很多学习DAX的小伙伴誉为DAX圣经。 原书在亚马逊收获4.8分(总分5分),受到广大读者好评,中文版一经上市,也得到国内读者追捧,一度位列京东数据热卖榜前10。 这样一部DAX里程碑式经典教材,是两位意大利人Marco Russo和Alberto Ferrari多年合作研究的结晶,DAX之父、微软Power BI首席工
OPENINGBALANCE系列函数一共包含三个函数:OPENINGBALANCEMONTH函数,OPENINGBALANCEQUARTER函数,OPENINGBALANCEYEAR函数。
PowerBI 准时更新,这次更新没有特别大的功能性更新,反而在更新的某些地方引入了BUG。本文将了解这些,更重要的是我们使用微更新的内容能做什么呢,这些微软没有告诉你,我来告诉你。
领取专属 10元无门槛券
手把手带您无忧上云