ged_2357

2020-06-19   阅读量: 796

Power BI

指标类型

扫码加入数据分析学习群

案例:基准比、均比、标准比

1、 计算平均值的陷阱

这种直接用average的写法来求,是错误的,因为直接用average算出来的是主键的平均,对于商机记录表来说,一条记录代表一条商机,这样算出来的是每条商机的平均额,所以是错误的。

所有城市总平均 = CALCULATE(average('商机记录'[商机金额(M)]),all('商机相关企业信息'[城市]))

正确的写法应该是:算出来商机金额的总额除以城市的个数

所有城市总平均 = CALCULATE(
sum('商机记录'[商机金额(M)]),all('商机相关企业信息'[城市]))/calculate(DISTINCTCOUNT('商机相关企业信息'[城市]),all('商机相关企业信息'[城市]))

注:

  • 当主键就是维度的时候,这种情况下可以直接用average直接求平均,其他情况都必须用合计值除以计数

  • distinctcount,不重复计数

2、rankx排名问题

方式一:正确( 行上下文计算)

金额排名 = rankx(all('商机相关企业信息'[城市]),[1金额合计])

方式二:正确(用calcaulate将筛选上下文转换为行上下文) 金额排名 =

rankx(all('商机相关企业信息'[城市]),CALCULATE(SUM('商机记录'[商机金额(M)])))

方式三:错误(直接引用聚合函数进行行上下文汇总) 金额排名 =

rankx(all('商机相关企业信息'[城市]),SUM('商机记录'[商机金额(M)]))

注:

  1. 直接在函数中嵌套使用已定义度量名的函数,属于行上下文筛选;

  2. 嵌套使用聚合函数时,需先定义度量名,再引用度量名;

  3. 不能将聚合函数(sum、max、min、count、avg)直接放到另一个函数中使用;

  4. 在聚合函数外层加上calculate(聚合函数),可以把筛选上下文改成行上下文,这样聚合函数就可以嵌套在函数中了

  5. 该函数以中国式排序进行排名:1,2,3,3,5...


添加CDA认证专家【维克多阿涛】,微信号:【cdashijiazhuang】,提供数据分析指导及CDA考试秘籍。已助千人通过CDA数字化人才认证。欢迎交流,共同成长!
33.8570 1 3 关注作者 收藏

评论(0)


暂无数据

推荐课程

推荐帖子