POWER BI里如何累计求和(一)
想想,在零售销售中,或者在数据分析中你的业务场景有没有涉及到以下几个点:

  1. 想知道某个产品在整体产品销售的位置。
  2. 想知道某一段时间内某产品或者某类别的销售贡献。
  3. 品类的管理
    等等,这些的分析维度里都可以涉及到累计销售这一概念,那么再power bi里如何求得累计销售呢?以下为常用到的两个方法利用earlier函数和dax计算得出

初学power bi的同学可以考虑使用方法一,简单并且容易理解。
 方法一
利用earlier函数

利用行上下文嵌套做出相互对应的筛选,也就是层级筛选。
A. 涉及公式如下:
B. 产品分类 = VALUES(‘示例 - 超市_迁移的数据’[子类别])
C. 总销售 = CALCULATE(SUM(‘示例 - 超市_迁移的数据’[数量]))
D. 累计销 = sumx(filter(‘产品分类’,‘产品分类’[总销售]>=earlier(‘产品分类’[总销售])),产品分类’[总销售])
E. 累计比 = DIVIDE([总销售],[累计销]

操作步骤:

  1. 导入超市示例数据,放入power bi 表中。

  2. 因为earlier是行级别所有需要新建虚拟表“产品分类”表。用公式A

产品分类 = VALUES(‘示例 - 超市_迁移的数据’[子类别])

使用VALUES是为了提出主表,拥有不重复字段的值。当然也可以使用DISTINCTCOUNT这一函数,和values用法基本一致,只有细微差别。

Values语法结构如下

3.产品分类表和超市示例表建立模型关系
进入模型界面,把相同的字段相互关联,产生多对一关系。类似于tableau里的内链接。注意:建立模型时需要有一表是唯一值才能调用。当然也有更为复杂的虚拟关系调用,但那涉及模型难度比较高,不建议使用。

  1. 在“产品分类”表新建三列公式列,即公式BCD。
    总销售 = CALCULATE(SUM(‘示例 - 超市_迁移的数据’[数量]))

累计销 = sumx(filter(‘产品分类’,‘产品分类’[总销售]>=earlier(‘产品分类’[总销售])),产品分类’[总销售])
暂时不了解公式的写法也没关系,直接套用就可以了,最简单的理解就是当前行大于返回的上一行就是得出累计销售

累计比 = DIVIDE([总销售],[累计销]
已经完成了累计销售,可以得出累计的占比,查看出某产品在整体产品中所处的水平。

以上就是使用函数earlier求累计销的方法,算出累计占比可以应用到ABCD分类中,也可以画出帕累托图。但同时他也有不足之处。
Earlier函数基于行级别运算,且需要一不重复字段的表为字段,当数据量过大的时候不利于提高计算速度。从学会套用慢慢开始,一步一步变成自己会用的知识。

 方法二,利用dax 函数写度量求得
在示例超市表上新建度量值:
累计金件百分比 = var currentsales=[销售件] //计算当前上下文的销售件,即该商品的销售件
var accumulatedsales=calculate([销售件], //计算累计销售件,即所有大于等于当前销售件的商品的销售件
Filter(addcolumns(all(‘示例 - 超市_迁移的数据’[子类别]),“销售件列”,[销售件]), //在全部商品名称表中添加一个销售件列,计算每个商品的销售件
[销售件列]>=currentsales)) //通过销售件列筛选出所有大于等于当前商品销售件的商品
return accumulatedsales //计算累计销售件占全部销件

原理解释:利用dax 反复录制功能一步写成公式实现,即VAR
使用了caclulat+filter 经典筛选的用法
使用addcolumns新增一列和当前一列进行对比

方法二和方法一的原理基本一致,通过销售件列筛选出所有大于等于当前商品销售件的商品。但好处是减少了建模步骤,省去建模环节,较快速处理。

输出结果:

POWER BI里如何累计求和(一)相关推荐

  1. 在Power BI中用DAX新建列的方式进行累计求和

    在Power BI中用DAX新建列的方式进行累计求和 DAX 新建列来累计求和 累计求和 DAX 新建列 DAX函数 Filter DAX函数 EARLIER DAX函数 SUMX DAX 新建列来累 ...

  2. tableau和oracle dv,比较Power BI和Tableau,好比用奔驰对比奥迪

    经常会有人问Power BI和Tableau的区别,好吧,为了非IT专业的能看懂,咱们就用车,奔驰和奥迪来对比一下.因为他们确实有太多相似之处. 所以Power BI VS Tableau,就相当于国 ...

  3. spss和python区别_tableau和power BI与python spss等 区别是什么?

    看到评论说Power BI不如excel, 真是惊呆了,无知者无畏吧 客观的说excel在其适用的领域也很强,基本是最强. 但和Power BI根本不是一个量级的工具.企业数据大部分不适用excel, ...

  4. power bi|漏斗图|漏斗模型:微信公众号数据

    做微信公众号数据可视化,用的软件是Power BI工具.最重要的是对源数据进行预处理. 根据业务情况建立一个漏斗模型: 公众号后台导出来的数据: 做之前遇到的问题: 1.源数据的指标计算(左指标,右数 ...

  5. power bi -分组累计求和

    方法1(举例分组累计求和1): 使用filter表逐行筛选 + var变量 + sumx迭代函数 方法2(举例分组累计求和2) 使用filter表逐行筛选 + earlier获取当前行变量 + sum ...

  6. 一个excel文档里复制黏贴另外表单跟着变动_利用Excel连接Power BI,实现PPT报告自动输出...

    ​文/HALI就职于汽车行业战略部门 专注汽车市场信息情报收集和分析 因为工作需要,每月周期性的更新数据和撰写PPT 报告成为繁重的劳动.结果是很多时间花费在数据处理上,真正的分析工作,往往只能草草收 ...

  7. Power BI中使用DAX生动展现人员头像、动态标签——销售数据里的那些商业智能

    目录 背景介绍 主要内容 数据预览 实现方案 头像展示 动态标签 总结 背景介绍 Power BI 作为一款强大的.生动的.且非常友好的商业智能软件,能帮助用户快速了解和分析数据.报表是可视化组件有机 ...

  8. Power BI 之 DAX语法规范详解1

    文章预览: Power BI 之 DAX语法规范详解 1 前言 表构造函数{()} Lookupvalue函数 Related函数: Relatedtable函数 筛选引擎Calculate 单条件筛 ...

  9. dax powerbi 生成表函数_如何用Power BI对数据建模?

    1.项目案例 这是一家咖啡店的数据,Excel里有两个表,分别是销售数据表.产品表. 销售数据表记录了咖啡订单,包括字段:订单编号.订日期.门店.产品ID.顾客.数量. 产品表中记录了咖啡的种类与价格 ...

最新文章

  1. 51CTO现已开通二级域名~~~~~
  2. Eclipse反编译插件安装
  3. TSM对Oracle数据库备份脚本
  4. GameBryo Shader 组织方式
  5. Windows Mobile实现透明控件
  6. Linux-oled096驱动硬件分析
  7. [CTO札记]第1天:认识人、熟悉环境
  8. 【优化预测】基于matlab遗传算法优化BP神经网络预测【含Matlab源码 1376期】
  9. WEBPACK+ES6+REACT入门(6/7)-使用this.setState修改state上的数据
  10. UG数控编程显示和隐藏的快捷键
  11. python股票接口_python获取股票数据接口
  12. 全球区块链专利排行榜中国52家企业上榜
  13. 10个国外免费下载电子书网站
  14. macbook更新系统服务器,为Mac新系统做准备 苹果更新OSX Server
  15. android switch模块
  16. vue 路由三种写法方式
  17. 带你玩转kubernetes-k8s(第14篇:k8s-深入掌握Pod-在容器内获取Pod信息)
  18. 如何重置Photoshop首选项?ps重置首选项的方法
  19. 这个世界从来没有任何一件工作叫“钱多、事少、离家近”
  20. 2021最新 阿里云服务器免费SSL证书配置方法(图文教程)

热门文章

  1. axios发送请求,后端报错:所需的防伪表单字段“__RequestVerificationToken”不存在
  2. java 借助modbus协议实现与硬件之间的通讯
  3. 使用 BOL API 创建 SAP CRM IBASE 数据
  4. 多图带您领略Windows 10 Server虚拟化平台风采
  5. pandas判断标称型和数值型特征数据
  6. 华为鸿蒙到底是不是安卓系统套了个壳?
  7. 如何提取复杂多引脚芯片的引脚编号及引脚名称
  8. java.sql.SQLException: Table 'XXX' is marked as crashed and should be repaired异常修复
  9. c#生成PPT总结(Microsoft.Office.Interop)
  10. Pytorch中transforms.Compose()的使用