首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

来看DAX之父如何看《DAX权威指南》一书

后来,我们研发团队决定冒着巨大的风险,将已取得市场份额第一的商业智能产品从以IT为主导的模式彻底从头设计,以便转型成为以终端用户为核心的自服务型软件,并与刚刚兴起的云计算紧密结合。...Alberto和Marco没有因为被迫进行技术转型苦恼,而是积极地拥抱变革,把这次技术革新当作一次新的机遇。...他们很快意识到新的编程语言DAX将会有广泛的市场需求,于是决定花大力气全面研究如何用最优化的DAX公式来实现所有常见的商业分析及报表功能。...如果对某一个算式有疑问,他们必然会联系我们以确保其公式是最优的,而且他们每次与我们通信,我都能从其提供的材料中看出他们已经经过长时间的深思熟虑和全方位的探索,不是简单地让我们给他们提供现成的答案,所以...通过对本书的学习,你将了解如何使用DAX语言进行商业智能分析、数据建模和数据分析;你将掌握从基础表函数到高级代码,以及模型优化的所有内容;你将确切了解在运行DAX表达式时,引擎内部所执行的操作,并利用这些知识编写可以高速运行且健壮的代码

75420

波士顿矩阵|原理+Python全流程实现

通常有如下三种市场份额计算方法: 总体市场份额:某企业销售量(额)在整个行业中所占比重; 目标市场份额:某企业销售量(额)在其目标市场,即其所服务的市场中所占比重; 相对市场份额:指某企业销售量(额)...在构建波士顿矩阵的时候,对于市场份额我们可以使用相对市场份额或者总体市场份额。...问题产品(选择性投资战略):谨慎投资,规划中心放在如何拓宽市场上,对于该类产品也可以先“割韭菜”然后放弃。...我们有如下的数据表格: 通常我们需要根据数据表去计算市场增长率和相对市场份额,按照上面所提到的公式进行计算即可。...data['市场增长率'] = (data['2021年销量(万)'] - data['2020年销量(万)']) / data['2021年销量(万)'] # 计算相对市场份额 data['相对市场份额

71250
您找到你想要的搜索结果了吗?
是的
没有找到

聊一个基于波士顿矩阵的数据业务分析案例

通过下图权衡选择ROI相对高然后需要投入的资源占的宽度不太多的方案。 03 现金牛业务 Cashcows,指低增长、高市场份额 处在这个领域中的产品产生大量的现金,但未来的增长前景是有限的。...BCG是用“相对市场份额”这个指标来表示竞争力的。这一步需要做市场调查才能得到相对准确的数据。计算公式是把一单位的收益除以其最大竞争对手的收益。 3. 表明各项业务在BCG矩阵图上的位置。...确定横坐标“相对市场份额”的一个标准线,从而将“相对市场份额”划分为高、低两个区域。 BCG的布鲁斯认为,这个界分值应当取为2。他认为“任何两个竞争者之间,2比1的市场份额似乎是一个均衡点。...所以和上面的市场增长率的标准线确定一样,由于评分等级过于宽泛,可能会造成两项或多项不同的业务位于一个象限中或位于矩阵的中间区域,难以确定使用何种战略。...确认C、D品牌为新星品牌,虽然目前不是公司的主要利润来源,但发展潜力很大,决定加大资金投放力度,加快发展步伐,扩大与竞争对手的差距,力争成为公司新的利润增长点。决定先期投入资金10万元。 3.

3.3K31

从零搭建微信公众号数据分析体系:看板美化篇

这里我们不去讨论哪一种算法才是正确的,不管用哪一种算法,如果是在excel表中的话,汇总行的公式都是不一样的对不对?如果是计算一个季度,一年,十年呢?...那么到了BI工具中,要怎么实现在不同的分析场景下使用公式都是正确的呢?我们换一个角度来思考这个计算公式如何写一个公式就能兼容天/月/周/年呢?...就以上面讲的第二种算法为例,不要想excel中公式是怎么写的,去想平均值的定义,其实这里真实的计算公式应该是统计期内销售额求和/统计期间数。如何界定统计期间呢?...稍微接触了一点dax的同学经常会有一个疑问,为啥要写sum(A)/sum(B)不是直接A/B,看完上面这个解释,有没有稍微理解一点了?...这部分相对来说内容是比较少的,毕竟,这里也不是追求完全的视觉效果。相比视觉效果,更在意的是分析内容本身。

29520

你的DAX学习热情,是怎样一步步被磨掉的?

当然,如果真是准备好了姓名表,在里面加计算列,也不难,计算列的公式可以适当改成以下这个达到目的(但这个公式其实不是很完美,因为如果继续有更多的计算列,容易出现循环引用问题): 后来,从群里的交流情况看...DAX问题的一个缩影,很多朋友总希望直接在使用(或许拿的是一些书上或文章中的案例)的过程中学习,以为通过一些例子就能很快地学会PP或DAX函数的各种用法,没有真正静下心去先把DAX的基础知识和原理先理解一遍...但,DAX不是!...虽然,DAX的函数看上去跟Excel的函数基本一样,实际差异很大,不是因为函数本身的语法,而是DAX函数的使用要充分考虑其所在的计算环境(模型,表间关系、计算上下文等)。...DAX的情况因模型的不同存在巨大的差异,在不合适的地方写一个公式,哪怕再简单,不光是得不到正确的结果,还极有可能出现各种错误,或是你完全无法理解的结果——而这种问题,如果没有理解其原理只看一个当前得到正确结果的公式

53420

PowerBI 致敬 Tableau 10大表计算

使用滑块调整参考日期。效果如下: Tableau 表达式: 以及: 在 PowerBI 中,模拟类似的需求,实现选定任意时间点,显示不同时间相对于该时间的销售额的增长率。...公共基准 您可能想参照一个公共基准点查看数据,不是查看一段绝对时间范围的数据。例如,这里有三部《玩具总动员》电影的票房收入。...各时段与平均值的差异 您可能更想看到季度销售额与当年平均值(不是绝对数)的差异。此处显示了与当年平均值和绝对订单数之间的差异。...对该效果的实现,虽然 DAX 公式并不复杂,但背后涉及需要透彻理解 DAX 计算原理,该复杂度远远超越了写出同样表达式的 Tableau 的程度。...这两点导致: PowerBI 的报表制作严重依赖于添加众多没有模型意义的辅助表以及过度复杂的相对重量级 DAX计算,虽然能证明 DAX 的强大,但明显可以感受到在很多方面,这并不得心应手。

4K20

Excel用户如何学习数据分析语言DAX

DAX处理的是表和列,不是单元格。 所以,当你写DAX表达式时,只能引用表和列。 表和列的概念在Excel中司空见惯。...在下图中,你会看到为SalesAmount列计算的表达式引用了同一个表中的列,不是工作簿中的单元格。...使用列引用的优点是,可以在列的所有单元格中使用相同的表达式,Excel为每行使用不同的值来计算公式。 与Excel不同,DAX只适用于表结构,所有表达式都必须引用表中的列。...优点是,可以在单个步骤中执行许多复杂的计算不必为此添加许多列,这对某些特定的公式有用。 缺点是,使用DAX编程的直观性不如Excel。...然而,这不是一个好的做法,因为它使用了更多的内存,并可能会降低计算速度,除非你使用了DirectQuery和聚合表。

1.3K10

对比Excel学PBI:减去上一行,DAX公式原来是这么想出来的!|DAX实战

Excel公式之所以比较简单,是因为Excel的数据是以单元格的方式存储的,并且可以通过公式对单元格的相对引用和自动填充特性来快速实现。...但DAX里只有表的概念,需要通过上行索引或上下文的特性才能支持对数据进行行的定位和筛选,不像Excel里可以直接通过动态引用到“上一行”(关于窗口函数的使用另文再讲)。...通过筛选方式的话,那是不是要包括以下几个过程?...筛选”然后计算得到相应的结果,最终公式如下: 小勤: 怎么公式这么长啊!...大海:DAX里很多公式显得很长,一是数据筛选的过程可能比较复杂一些,还有一个原因是为了便于公式的阅读,进行了换行和缩进,以及对中间计算过程使用了变量暂存的处理方式。 小勤:理解了。

8410

学习用Excel数据分析?恐怕还缺一本圣经。

DAX处理的是表和列,不是单元格。 所以,当你写DAX表达式时,只能引用表和列。 表和列的概念在Excel中司空见惯。...在下图中,你会看到为SalesAmount列计算的表达式引用了同一个表中的列,不是工作簿中的单元格。 ?...使用列引用的优点是,可以在列的所有单元格中使用相同的表达式,Excel为每行使用不同的值来计算公式。 与Excel不同,DAX只适用于表结构,所有表达式都必须引用表中的列。...优点是,可以在单个步骤中执行许多复杂的计算不必为此添加许多列,这对某些特定的公式有用。 缺点是,使用DAX编程的直观性不如Excel。...然而,这不是一个好的做法,因为它使用了更多的内存,并可能会降低计算速度,除非你使用了DirectQuery和聚合表。

2.4K20

Thinking in DAX with PowerBI - 逻辑框架 - 计算逻辑

DAX 中,你其实已经用过了很多算法,你编写的任何 DAX 公式都是一个算法,都是一个计算方法,这些计算方法被定义成了一个核心部件,叫:度量值。...那么现在,你应该可以感受到,很多时候往往你思考一个问题不得解,是没有想好数据的结构。例如,要计算留存用户数的思路就是要使用集合的结构。...我们后续会计算展示不同数据结构的使用,但这些仅仅是《Thinking in DAX》的一个部分哦。 计算逻辑 这是本文的重点内容了。...如果没有或者缺失,那么 DAX 就很有限了;如果有,那么岂不是可以这么来思考问题了。 DAX 中的顺序逻辑 首先,我们要看懂什么是顺序逻辑,如下: ? 在 DAX 中,如何表示顺序逻辑呢?...) ) // 其中, fx( Row , ... ) = IF ( ... = FALSE , RemoveRowFromTable( Table , Row ) ) 作为使用者,我们只需要使用

1.5K62

PowerBI DAX 递归问题如何解 - 比例型

有很多小伙伴常常问到含有递归特性的 Power BI DAX 计算问题,这在 DAX 中应该如何解呢? 本文来阐述【比例型】的解决方案。...问题分析 对于预期增长率表,其含义为: 当前年份相对前一年份的预期增长率。...递归计算 由于 DAX 不支持递归,但可以用已经推导出的公式替代,化递归为聚合运算,公式如下: X(n) = X(0) * ( A(n-1) * A(n-2) * … * A(0) ) 若某元素有已知值对应则取值...测试效果 注意 测试的公式括号中的参数是没有顺序的,但不影响结果。可以控制顺序,但此处不是必须的。...总结 虽然 DAX 并不支持递归,但对一部分具有特点的递归计算,可以化解成数列聚合运算模式,本文给出了这方面的探索和示范。在滚动预测,存货,库存,余额等场景中均可以使用

99721

DAX 陷阱 AutoExist 及解决方案

然而,对于清除了产品子类别筛选的计算,其结果是:461,不是 905,这个结果非常诡异。...这里的确不是 BUG,而是 Power BI 的 DAX 引擎就是这么设计的,这里触发了 DAX计算时候的一个机制导致了这种效果。这个机制叫:AutoExist。...Power BI 要解决的重要问题就是: 如何在一个巨量的数据空间中,迅速缩减到图表所需要的一个数据子集,通过筛选实现这个目的,一个表上的多个筛选,如果在计算时分别对待,则会触发笛卡尔积的排列组合运算...需要注意的是:AutoExist 是故意这么设计的,它既不是 DAX 的缺陷,也不是 DAX 的 BUG,只是由于对 DAX 运行原理不够了解踏入的一个陷阱。...时间来到 2022 年,Power BI 的学习方式已经不是几年前,一起高喊 DAX 牛逼的日子,而是精细化的拆解出一套业务人员与技术人员的有效区隔,业务人员应该将注意力集中在业务本身,以及如果使用 DAX

2.8K20

Extreme DAX-第3章 DAX 的用法

不是像表构造函数中那样用小括号分隔。...这是 DAX 度量值的额外优势的一个简单示例,使用适当的 DAX 函数不是对列进行基本聚合。 DAX 度量值应当作为您为 Power BI 模型提升智能水平的默认选项。...但是,由于计算是在用户查看报表时按需完成的,因此必须努力创建最高效的计算方式。在本书的第二部分,我们不仅关注如何使用 DAX 度量值解决业务方案,还将重点阐述如何创建高效的 DAX 度量值。...在本书中,我们将重点介绍如何使用 DAX 公式通过计算表的方式创建一个日期表。有两个 DAX 函数专门用于执行此操作:CALENDAR 和 CALENDARAUTO。...3.7.2 使用显式度量值 我们建议创建显式 DAX 度量值,不是直接在可视化报表中使用(事实)表中的数字列,原因如下。

7.1K20

Extreme DAX-第4章 上下文和筛选

使用 DAX 创建复杂见解的一般过程可以描述如下。 分析研究将在接下来的计算使用到的(可能的)查询上下文。 确定期望结果所需的筛选上下文。 确定如何从查询上下文变为筛选上下文。...这可能会包含由于不完整关系添加到表中的空白行中的值(请参见第2章 模型设计;这些值必然为空)。如果不希望这些空白值包含在上下文中,则应使用 ALLNOBLANKROW 不是 ALL。...在 Power BI 模型中使用相同的函数创建计算表可能会有所帮助,但无论如何使用 DAX 表函数需要一定程度的抽象思维。...4.6.5 使用表函数进行筛选 长久以来,我们在使用 DAX 时常常感叹于表和筛选之间的深层联系。在本节中,您将了解这个联系是什么,以及如何利用它。...DAX 变量,使得这类设计高级 DAX 代码的工作变得轻松了不少。该名称有些奇怪,因为 DAX 变量的用途是,您可以计算一次某些内容,稍后在其他情况下(通常是其他上下文)使用它,不必担心变量的计算

5.5K20

「产品战略管理 」产品策略工具 - BCG增长 - 共享矩阵

BCG增长份额矩阵以市场增长率与市场份额相对于竞争对手的图表显示各种业务单位。该图是一个简单的2x2网格,可创建四个象限。...BCG矩阵是一种战略分配模型,显示了如何将资金从战略弱点转移到机会。根据网格中产品的分类(即明星,问号,摇钱树或狗),公司然后评估其投资组合的健康状况。目标是不断产生未来的现金奶牛。...在讨论每种产品的当前市场条件(经济,竞争等)以及随后的单个产品和产品组合策略时,我使用矩阵作为支持材料。 例如,使用上述BCG矩阵设置场景,产品管理团队将与高级管理人员讨论他们针对每种产品提出的计划。...有时候计划是允许狗继续生活,但看看留住顾客不是让他们转向竞争产品。但BCG矩阵允许向高级管理层表明情况,以便他们在理解情况的实际情况下听取提议的计划。...微信小号 激烈深度讨论,报上你想加入的群:企业架构,云计算,大数据,数据科学,物联网,人工智能,安全,全栈开发,DevOps,数字化.社群已经有5000人,赶快加入讨论。

1.1K20

一个简单现实案例挑战 PowerBI 水平测试 - 深度解析

可谓一题洞悉 DAX 奥秘,CALCULATE 如何计算的?RANKX 如何计算的?在本题面前都逊色了。也希望大家可以提交来自真实环境的有价值题目,一起研究。 赶快行动吧。... PowerBI 中使用 DAX 构建公式却没有这样的便利,这是很多业务伙伴无法从 Excel 切换思维到 PowerBI 的重要原因。 该问题已经在 PowerBI 社区被投票投成了热门: ?...而对某些高手,已经可以意识到,我在这里给出了在目前的状态下,PowerBI DAX 如何实现视图层计算的通用套路。这个套路如此通用,以致于它可以一揽子解决几乎所有视图层计算的问题。...另外,它直接将我要提出的 PowerBI DAX 视图级通用计算模式呼之欲出。 你可以再看一遍:视图环境克隆 + 静态化 提出了使用 DAX 的新思路和玩法。香不香,好好感受吧。...震撼的 PowerBI DAX 视图级通用计算模式 就要来了。

2.6K31

DAX中的基础表函数

当需要编写DAX查询和迭代表的高级计算时,表函数非常有用。本文会介绍相关的计算示例。 本文的目标是介绍表函数的概念,并非提供所有DAX表函数的详细说明。...这不是最佳做法。在《DAX权威指南》的第4章中,你将学习如何使用CALCULATE函数来实现更灵活、更高效的筛选。本文示例的目的不是提供DAX度量值的最佳实践,而是解释表函数如何在简单表达式中工作。...新建表是一个计算表,其值由DAX表达式决定,不是从数据源加载。...DAX查询的强大之处在于其可以使用众多的DAX表函数。在下一节中,你将学习如何通过使用和组合不同的表函数来创建高级计算。...造成这个问题是因为存在无效的关系,不是公式本身。实际上,无论我们创建什么公式,在Sales表中都有许多产品的销售记录在数据库中没有对应的产品信息。

2.6K10

PowerBI DAX 之父访谈,泄露诸多重大消息

尤其是使用了易失性函数时,会更慢,因为会计算。易失性函数包括:NOW, TODAY, UTCNOW, UTCTODAY, RAND, RANDBETWEEN。解决建议可以有:1、避免上述问题。...问:Power BI Desktop 会加入自动 DAX 公式格式化吗? 答:目前没有这个计划。建议使用第三方工具,如:Tabular Editor。...关于这个问题,继续给出了一个非常非常非常非常重要的说明如下: 请牢牢记住 PowerBI 的设计初衷是帮助业务人员的,不是为了程序员的,业务人员需要的是简单,不是去编程。...业务驱动的数据分析,不是程序员,请跟随正确的体系,学习正确的思维模式, 不要把自己搞成一个 PowerBI 程序员。 问题来了,为什么大家都感觉写 DAX 公式似乎需要比编程更复杂的知识体系呢?...但是说到和 DAX 引擎有关的,最大的计划就是如何DAX 更加简单以及在大数据规模下的更快。这些需要大量底层工作。 问:可以具体透露一下细节吗? 答:正在考虑呢,没细节。

3.1K10

用大模型改造后,产品怎么定价?

然而,大模型作为AI应用要用GPU,GPU是很贵的。 那么,问题来了,用大模型重新改造之后的系统,会不会比原来成本更高了。对于用户而言,同样的产品,是不是产品价格更高了?...这个系统主要运行在传统的CPU上,对计算资源的需求相对较低,因而硬件成本控制在较低水平。此外,维护这个系统主要依赖于营销团队进行规则的更新,对于人力成本的依赖也相对有限。...计算ROI时,我们需要考虑的不仅是直接的财务收益,如增加的销售额或降低的运营成本,也要考虑间接收益,比如品牌价值的提升、市场份额的增长以及客户满意度的改善。...ROI的计算公式相对简单:(收益 - 成本)/ 成本,但挑战在于准确估算这些收益和成本,特别是对于间接收益的量化。 为了更准确地评估大模型技术的ROI,企业还需要进行敏感性分析和风险评估。...这种改进不仅有助于提高现有用户的满意度和粘性,也能吸引新客户,从而增加市场份额和收入。 成本方面,最大的开销在于大模型的开发和部署。这包括了高昂的计算资源费用、专业人员的薪酬以及可能的技术咨询费用。

16010

将透视表伪装成表格的两种方式

其实你的透视表还可以伪装成表格,与众不同: 和传统透视表一样,它支持鼠标右键刷新数据: 它也支持添加切片器动态筛选数据: 那么,如何实现呢?本文介绍两种方式。...: 在新的数据页面鼠标右键,编辑DAX: 在弹出的界面输入以下公式: SUMMARIZE ( '销售明细', [员工工号], [销售员], "销量", SUM ( '销售明细...另外,借助DAX STUDIO也可实现以上功能: 3.总结 ---- Power Query的方案更加简洁,不需要输入任何公式DAX的方案相对复杂。...如果透视表喜欢使用表格形式,逻辑比较简单,仅包括求和、计数等,推荐使用Power Query方案。如果逻辑非常复杂,推荐使用DAX方案。...DAX全称数据分析表达式,可以将复杂的多数据源模型生成一个简约的表格。本文使用了SUMMARIZE函数,更多DAX函数可参考DAX.GUIDE网站的介绍。

1.5K30
领券