如何在Power BI中用CountIf按条件统计指定站点状态数据
在Power BI中按国家统计站点状态数量的实现方法
这里提供两种实用方法,根据你的需求场景选择:
方法一:DAX度量值法(推荐,支持动态更新)
- 打开Power BI Desktop,切换到数据视图,点击顶部「新建度量值」。
- 创建两个度量值(替换
'基础表格'为你的实际表名,[站点ID]为唯一标识站点的列,比如站点名称):- 统计Completed/Ongoing站点数:
Completed/Ongoing站点数 = CALCULATE( COUNT('基础表格'[站点ID]), OR('基础表格'[状态] = "Completed", '基础表格'[状态] = "Ongoing") ) - 统计Terminated站点数:
Terminated站点数 = CALCULATE( COUNT('基础表格'[站点ID]), '基础表格'[状态] = "Terminated" )
UPPER函数统一匹配:Completed/Ongoing站点数 = CALCULATE( COUNT('基础表格'[站点ID]), OR(UPPER('基础表格'[状态]) = "COMPLETED", UPPER('基础表格'[状态]) = "ONGOING") ) - 统计Completed/Ongoing站点数:
- 回到报表视图,插入「表格」视觉对象:
- 将「国家」列拖入表格的「行」区域
- 将刚创建的两个度量值拖入「值」区域,可右键度量值重命名调整列名,最后调整列顺序即可。
方法二:Power Query预处理法(适合生成静态统计表)
- 点击顶部「转换数据」进入Power Query编辑器,加载你的基础表格。
- 添加辅助标记列:
- 点击「添加列」→「自定义列」,输入公式:
命名为「正常站点标记」;if [状态] = "Completed" or [状态] = "Ongoing" then 1 else 0 - 再添加一个自定义列:
命名为「终止站点标记」。if [状态] = "Terminated" then 1 else 0
- 点击「添加列」→「自定义列」,输入公式:
- 分组统计:
- 点击「转换」→「分组依据」,选择「高级」选项:
- 分组依据列选「国家」;
- 添加两个聚合项:
- 第一项:操作选「求和」,列选「正常站点标记」,新列名「Completed/Ongoing站点数」;
- 第二项:操作选「求和」,列选「终止站点标记」,新列名「Terminated站点数」。
- 点击「转换」→「分组依据」,选择「高级」选项:
- 点击「关闭并应用」,回到报表视图直接使用预处理后的表格创建视觉对象即可。
内容的提问来源于stack exchange,提问作者stayschemin
相关产品推荐
相关产品推荐

