109_Power Pivot客户ABC(帕累托)分析度量值写法(非计算列)
博客:www.jiaopengzi.com
1、背景
客户ABC分析,一般的套路是在计算列中把客户ABC分类,便于后续维度使用。今天用度量值的方式写一个ABC的分类。先上效果图(作图是笔者弱项,将就看吧。)

2、数据源及关系
数据源
维度表:DIM;事实表:FACT如下

关系

ABC设置
A:[0,0.7]
B:(0.7,0.9]
C:(0.9,1]
3、上DAX
total
total:=SUM('FACT'[value])
R:排名
R:=IF(ISFILTERED(DIM[客户ID]),RANKX ( ALL( DIM[客户ID] ), [total], [total], DESC ))
累计%:客户value降序的累计百分比
累计%:=VAR LJ =
CALCULATE (
[total],
TOPN ( 'DIM'[R], ADDCOLUMNS ( ALL ( DIM ), "R", 'DIM'[R] ), [R], ASC )
)
VAR T =
CALCULATE ( 'FACT'[total], ALL ( DIM[客户ID] ) )
VAR P =
DIVIDE ( LJ, T )
RETURN
P
分类:客户ABC的分类
分类:=VAR LJ =
CALCULATE (
[total],
TOPN ( 'DIM'[R], ADDCOLUMNS ( ALL ( DIM ), "R", 'DIM'[R] ), [R], ASC )
)
VAR T =
CALCULATE ( 'FACT'[total], ALL ( DIM[客户ID] ) )
VAR P =
DIVIDE ( LJ, T )
RETURN
IF(ISFILTERED(DIM[客户ID]),SWITCH (
TRUE (),
P > 0
&& P <= 0.7, "A",
P > 0.7
&& P <= 0.9, "B",
P > 0.9
&& P <= 1, "C"
))
A:A类客户的value
A:=var FL='DIM'[分类]
RETURN
IF(FL="A",'FACT'[total])
B:B类客户的value
B:=var FL='DIM'[分类]
RETURN
IF(FL="B",'FACT'[total])
C:C类客户的value
C:=var FL='DIM'[分类]
RETURN
IF(FL="C",'FACT'[total])
透视表效果
这里拉出的效果是按照客户维度的,需要按照排名维度来做一个排序及即可做图。

作图辅助表及作图
笔者作图美工弱项,将就看吧,功能基本达到,可以根据需求再美化。


4、总结
1、在计算列中计算出ABC分类,便于维度分析
2、本案例不用计算列即可,弊端是不能在维度中
3、客户ABC分析主要是要把客户rank搞定,根据输出的上下文写dax即可。
by 焦棚子
109_Power Pivot客户ABC(帕累托)分析度量值写法(非计算列)的更多相关文章
- 帕累托分析法(Pareto Analysis)(柏拉图分析)
帕累托分析法(Pareto Analysis)(柏拉图分析) ABC分类法是由意大利经济学家帕雷托首创的.1879年,帕累托研究个人收入的分布状态图是地,发现少数人收入占全部人口收入的大部分,而多数人 ...
- 数据可视化之分析篇(一)使用Power BI进行动态帕累托分析
https://zhuanlan.zhihu.com/p/57763423 通过简单的点击交互,就能进行动态分析发现见解,才是我们需要的,恰好这也是 PowerBI 所擅长的. 就帕累托分析来说,能从 ...
- 数据可视化之PowerQuery篇(十一)使用Power BI进行动态帕累托分析
https://zhuanlan.zhihu.com/p/57763423 上篇文章介绍了帕累托图的用处以及如何制作一个简单的帕累托图,在 PowerBI 中可以很方便的生成,但若仅止于此,并不足以体 ...
- 数据特征分析:3.统计分析 & 帕累托分析
1.统计分析 统计指标对定量数据进行统计描述,常从集中趋势和离中趋势两个方面进行分析 集中趋势度量 / 离中趋势度量 One.集中趋势度量 指一组数据向某一中心靠拢的倾向,核心在于寻找数据的代表值或中 ...
- 数据可视化之powerBI技巧(四)使用Power BI制作帕累托图
各种复杂现象的背后,其实都是受关键的少数因素和普通的大多数因素所影响,把主要精力放在关键的少数因素上,就能达到事半功倍的效果. 这就是大家常说的二八原则,也称为帕累托原则,最早是由意大利经济学家 V. ...
- 帕累托分布(Pareto distributions)、马太效应
什么是帕累托分布 帕累托分布是以意大利经济学家维弗雷多·帕雷托命名的. 是从大量真实世界的现象中发现的幂次定律分布.这个分布在经济学以外,也被称为布拉德福分布. 帕累托因对意大利20%的人口拥有80% ...
- tableau-创建帕累托图
参考文献:https://onlinehelp.tableau.com/current/pro/desktop/zh-cn/pareto.html 帕累托图是一种按发生频率排序的特殊直方图.在质量管理 ...
- Tableau绘图一热图、日历图、人口金字塔、标靶图、凹凸图、帕累托图
Tableau绘图一热图.日历图.人口金字塔.标靶图.凹凸图.帕累托图 本文首发于博客冰山一树Sankey,去博客浏览效果更好.直接右上角搜索该标题即可 一.热图 例子:示例超市 可以通过更改颜色来改 ...
- FusionCharts 2D帕累托图
1.了解帕累托图的特性以及和其他图的共性 2.设计帕累托图页面中引入图的类型以及怎么引入到页面 Pareto2D.html: <!DOCTYPE HTML PUBLIC "-//W3C ...
随机推荐
- web app遇到的一些坑及小技能(持续更新...)
遇到的一些坑 问题:手机端 click 事件会有大约 300ms 的延迟 原因:手机端事件 touchstart --\> touchmove --> touchend or touchc ...
- Top 15 - Material Design框架和类库(译)
_Material design_是Google开发的,目的是为了统一公司的web端和手机端的产品风格.它是基于很多的原则,比如像合适的动画,响应式,以及颜色和阴影的使用.完整的指南详情请看这里(ht ...
- C#编写一个计算器
编写一个计算器,练习在窗体上添加控件.调整控件的布局,设置或修改控件属性,编写事件处理程序的方法. 代码: using System; using System.Collections.Generic ...
- Factorials and Powers of Two
分析:我们可以看出这道题目的描述并不是很复杂,就是说对于一个给定的整数n,我们能否把他拆成k个powerful的数,也就是说这k个数要么是2的幂次,要么是某个数的阶乘,并且我们要让当前的k越小越好:然 ...
- 爬虫---scrapy架构和原理
scrapy是一个为了爬取网站数据, 提取结构性数据而编写的应用框架, 它是基于Twisted框架开发而来, 而Twisted框架是事件驱动的, 比较适合异步代码. 对会阻塞线程的操作, 包括访问数据 ...
- shiro之第一个程序认证
有关shiro的介绍请访问https://blog.csdn.net/Kevinnsm/article/details/111823268 三个核心组件:Subject, SecurityManage ...
- Java重载容易引发的错误—返回类型
方法的签名仅仅与方法名和参数类型相关,而与访问控制符.返回类型无关,以及方法体中的内容都没有关系,下面用一个例子说明; 如果Student类两种签名,myStudent(int,int)返回int 类 ...
- spring-基于注解的aop开发(快速入门)
步骤: 1.导入坐标 <dependency> <groupId>junit</groupId> <artifactId>junit</artif ...
- JavaWeb知识梳理(可收藏)
**JavaWeb相关知识 ** 1.Servlet 1.1 Status Code(Http状态码) 1.1xx 请求信息 Http状态码 Http Status Code Http状态码含义中文说 ...
- 两数之和_LeetCode_1
LeetCode_1原题链接:https://leetcode-cn.com/problems/two-sum/ 剑指 Offer 57原题链接: https://leetcode-cn.com/pr ...