如何计算不断增长的清单的平均值?
详细说明:我有粗略的加速度计数据,每秒从10
返回到15
次。如何在给定时刻找到平均值?
我想到的解决方案是存储返回的总和及其计数,然后每次都将其除以,但这会导致缓冲区溢出和不准确的结果,因为计算机存在十进制数问题。
请提出算法或数学公式。
答案 0 :(得分:2)
John D. Cook在计算均值和标准偏差方面有very good post,具有更强的数值属性。
基本上(降低所有复杂性)它可以像这个python代码一样简单(想象data
作为无限可迭代):
n = 0
mean = 0
for value in data:
n += 1
mean += (value - mean) / n
答案 1 :(得分:1)