• 计算不断变化的数据的均值


    工作中,要实现计算数据均值的功能:不停读取数据,计算数据的均值。常规计算均值的方法是,把读取到的数据累加起来,最后除以读取的数据量,但是由于数据比较多,累加的过程可能会存在溢出的情况

    从网上搜索计算均值的其他方法,在csdn论坛里有人回复如下:

    我怎么发现就像股票数据哈,股票数据的处理方式都是每天交易结束时,把平均算好的,临时算肯定太慢啦。比如一只股票的价格变化时这样的:

    即时价格       均值
    1
    2              (1 + 2) / 2 = 1.5
    3              1.5 / 3 * 2 + 3 / 3 * 1 = 2
    4              2 / 4 * 3 + 4 / 4 * 1 = 2.5
    5              2.5 / 5 * 4 + 5 / 5 * 1 = 3
    6              3 / 6 * 5 + 6 / 6 * 1 = 3.5
    7              3.5 / 7 * 6 + 7 / 7 * 1 = 4

    所以第n天的均值价格通式就是:
    前一天的均值 / n * (n - 1) + 当天的即时价格 / n

  • 相关阅读:
    Web框架本质及浅谈HTTP协议
    mysql
    jQuery
    Css
    html
    socket编程
    面向对象and类
    模块
    装饰器
    cef network-settings
  • 原文地址:https://www.cnblogs.com/victoria-c/p/6339719.html
Copyright © 2020-2023  润新知