基于分类的中位数线上方数据占比DAX实现求助
解决方案:DAX公式实现FOMC会议占比卡片
步骤1:计算完整数据集的总体中位数(OVR Median)
先创建度量值获取不受当前筛选影响的完整数据集中位数:
OVR Median = CALCULATE(MEDIAN(Table_1[目标数值列]), ALL(Table_1, Table_2))
说明:ALL(Table_1, Table_2)用于忽略页面筛选器,确保计算的是完整数据集的中位数,需替换[目标数值列]为你实际要比较的数值字段
步骤2:统计高于中位数的FOMC会议日期数
创建度量值统计符合条件的FOMC会议日期数量:
FOMC 高于中位数数量 = CALCULATE( DISTINCTCOUNT(Table_1[Date]), Table_1[数据类型] = "FOMC Meetings", Table_1[目标数值列] > [OVR Median] )
说明:DISTINCTCOUNT(Table_1[Date])确保每个会议日期仅计数一次,需替换[数据类型]为你区分FOMC和Earnings的字段名称
步骤3:统计FOMC会议日期总数量
创建度量值统计所有FOMC会议的日期总数:
FOMC 总日期数量 = CALCULATE( DISTINCTCOUNT(Table_1[Date]), Table_1[数据类型] = "FOMC Meetings" )
步骤4:生成卡片显示文本
创建度量值生成指定格式的展示文本:
FOMC 占比卡片文本 = VAR 占比 = DIVIDE([FOMC 高于中位数数量], [FOMC 总日期数量]) VAR 百分比格式 = FORMAT(占比, "0%") VAR 分数格式 = [FOMC 高于中位数数量] & "/" & [FOMC 总日期数量] RETURN 百分比格式 & " FOMC会议日期数据高于OVR Median" // 若需显示分数格式,替换RETURN内容为: // 分数格式 & " FOMC会议日期数据高于OVR Median"
说明:可直接切换RETURN后的内容,选择百分比或分数显示格式
注意事项
- 确认Table_1与Table_2通过Date字段正确关联,避免筛选上下文错误
- 替换所有公式中的占位字段(如
[目标数值列]、[数据类型])为数据集实际字段名 - 若FOMC会议日期存储在Table_2中,调整CALCULATE内的表和字段引用即可
内容的提问来源于stack exchange,提问作者Noob_engineer
相关产品推荐
相关产品推荐

