分组聚合运算
需要一个度量值https://gcdn-cdn.grapecity.com.cn/data/attachment/forum/202405/27/104745c163x11km16k3lww.png
预估满发小时数=(同一组‘清单编号’的相同‘年月’的‘本次电量’)除以( 同一组‘清单编号’的相同‘年月’的个数除以12再乘以800
基于你这个数据结构,可以通过WAX来达到目标,
新建一个表结构
Table 未命名0527{
Year, //年
Month,//月
Amount//电量数量
}
1. 新建一个计算列,YM = '未命名0527' & '未命名0527'
2. 新建一个度量:CountOfYM= Count('未命名0527')
3. 新建一个度量返回最终结果: Result= Sum('未命名0527') * 400 / '未命名0527' / 12
第三步就是你想要的。
附上示例的仪表板文档
Run2024 发表于 2024-5-27 14:29
基于你这个数据结构,可以通过WAX来达到目标,
新建一个表结构
Table 未命名0527{
不是求数量,是用电量和来除,附上源数据
预估满发小时数=(同一组‘清单编号’的相同‘年月’的‘本次电量’之和)除以( 同一组‘清单编号’的相同‘年月’的个数除以12再乘以800
michelle_dv 发表于 2024-5-27 15:35
不是求数量,是用电量和来除,附上源数据
预估满发小时数=(同一组‘清单编号’的相同‘年月’的‘本次 ...
楼上老铁回复的是正确的,看您要求的只需要更改第三个度量值后半部分。 lucas.Yan 发表于 2024-5-28 14:32
楼上老铁回复的是正确的,看您要求的只需要更改第三个度量值后半部分。
抱歉 之前没看明白,要求的是不同年月的计数年月是同一列的数据 michelle_dv 发表于 2024-5-28 15:49
抱歉 之前没看明白,要求的是不同年月的计数年月是同一列的数据
不太理解您的需求,是不同年月还是相同年月日的?
要分条件:从离现在最近的年月的月份开始倒推,(比如最新的年月为2024年4月,倒推12个月到2023年的5月份,只看月份且必须是连续的,如果月份满了12个月(每个月都有),则看做一年的数据,公式为:sum(本次电量)/800),如果不满12个月的,公式为:sum(本次电量)/(月份个数/12*800)
michelle_dv 发表于 2024-5-29 11:41
要分条件:从离现在最近的年月的月份开始倒推,(比如最新的年月为2024年4月,倒推12个月到2023年的5月份 ...
根据您的数据,我们做了一个demo。先通过计算字段构建出日期。最近的日期,最近的日期往前推一年的日期:
新建计算列判断当前数据是否满足月份数量是12个月的条件,根据您的条件判断,:
满足返回1,不满足返回0
最后添加一个度量值进行计算:
If(1=Average('论坛问题'[满足12月]), Sum('论坛问题'[本次电量])/800,Sum('论坛问题'[本次电量])/(Count('论坛问题'[电费年月(月)])/12*800))
Eden.Sun 发表于 2024-5-30 19:33
根据您的数据,我们做了一个demo。先通过计算字段构建出日期。最近的日期,最近的日期往前推一年的日期: ...
我的电费年月不是两列,是一列,格式如下:
所以日期那个计算列没法计算,满足12月那个计算列也只能这么写:
var t1 = Summarize('工厂能源数据集','工厂能源数据集'[电费年月],"日期1",Max('工厂能源数据集'[电费年月]),"max_date1",Max('工厂能源数据集'),"max_date_last1",Max('工厂能源数据集'))
var t2 = Filter(t1,[日期1]>=,[日期1]<)
return IF(CountX(t2,)=12,1,0)
但是最后算出来不对,如下,第一个OPPO的是满了12个月的
Eden.Sun 发表于 2024-5-30 19:33
根据您的数据,我们做了一个demo。先通过计算字段构建出日期。最近的日期,最近的日期往前推一年的日期: ...
满足12个月那个计算列返回的全是0,我已验证过第一个OPPO的是满了12个月的 ,应该返回的是1
页:
[1]
2