按条件进行计数是个很常见的需求,Excel有个专门的函数COUNTIF来做这种计算,PowerBI有没有类似的函数呢?

PowerBI并没有与COUNTIF功能完全相同的函数,不过做这种计算也并不是难事,下面就以这个简单的数据为例:

来看看PowerBI对类别进行计数的几种方法。

PowerQuery法

添加自定义列:

List.Count(
Table.SelectRows(
源,(x)=>x[类别]=[类别]
)[类别]
)

如果要按月来统计类别的数量,只需要增加一个筛选的条件即可:

List.Count(
Table.SelectRows(
源,(x)=>x[类别]=[类别] and x[月份]=[月份]
)[类别]
)

利用DAX添加计算列法

在数据模型中利用DAX也是同样的思路,添加计算列:

类别计数 =
COUNTROWS(
FILTER(
'数据表',
'数据表'[类别]=EARLIER('数据表'[类别])
)
)

按月来统计类别的数量可以这样写:

类别计数 按月 =
COUNTROWS(
FILTER(
'数据表',
'数据表'[类别]=EARLIER('数据表'[类别])&&
'数据表'[月份]=EARLIER('数据表'[月份])
)
)

利用DAX建立度量值法

如果用度量值来计算类别的数量,应该怎么做呢?其实可以更简单:

类别计数 度量值 = COUNTROWS('数据表')

如果想看类别的计数,将类别作为上下文即可:

如果按月查看类别的计数,只需要上下文中加入月份:

如果是添加列的方式来计数,无论是PowerQuery自定义列还是DAX计算列,思路是一样的,只是用的函数不同而已。

而通过度量值来计数,要简单很多,关键是厘清楚分析和展现的逻辑,提供合适的上下文。

Power BI报告的背景和壁纸,到底有什么区别?

用Power BI制作时间轴,其实可以很简单

PowerBI星球常用的案例模型送给你~

PowerBI星球 返回搜狐,查看更多

平台声明:该文观点仅代表作者本人,搜狐号系信息发布平台,搜狐仅提供信息存储空间服务。