首页 > 解决方案 > 可变时间窗口中的平均值的平均值

问题描述

语境:

问题:


通过累积其活动的数量和等级, “有效地”计算单个主题的subject_avg :

日期 年级
第一幕 第 1 天 0.5
第二幕 第 3 天 1
第三幕 第 3 天 0.8
第四幕 第 6 天 0.6
第五幕 第 6 天 0
avg_sum 活动计数
第 1 天 0.5 1
第 3 天 2.3 3
第 6 天 2.6 5

我称之为“有效”,因为如果我需要在任何两个日期之间的subject_avg,我可以通过第二个表的简单算术获得它:

subject_avg (day 2 to 5) = (2.3 - 0.5) / (3 - 1) = 0.6 

计算global_avg

科目A

avg_sum 活动计数
第 1 天 0.5 1
第 3 天 2.3 3
第 6 天 2.6 5

科目B

avg_sum 活动计数
第 4 天 0.8 1
第 6 天 1.8 2
global_avg (day 2 to 5) = (subjectA_avg + subjectB_avg)/2 =  (0.6 + 0.8) / 2 =  0.7

我有数百个主题,所以我现在需要:有什么方法可以预处理subject_avgs以便我不需要在计算global_avg之前单独计算给定时间窗口中的平均值?

标签: algorithm

解决方案


推荐阅读