利用递推快速计算方差和均值
2017-08-29 16:28
399 查看
问题来源:算法第四版习题1.2.18,累加器的方差里用递推来计算平均值和方差:
公式推导:
均值定义:
![](https://img-blog.csdn.net/20170829181422503)
方差定义:
![](https://img-blog.csdn.net/20170829181836764)
均值的递推:
![](https://img-blog.csdn.net/20170829165222917)
方差的推导:
![](https://img-blog.csdn.net/20170830093601240)
![](https://img-blog.csdn.net/20170830095102915)
其中
![](https://img-blog.csdn.net/20170830095240972)
这样递推的好处:
1.实时更新数据;2.减小运算量;3.更好的避免四舍五入带来的误差。
public class Accumulator { private double m; private double s; private int N; public void addDateValue(double x) { N++; s=s+1.0*(N-1)/N*(x-m)*(x-m); m=m+(x-m)/N; } public double mean() { return m; } public double var() { return s/(N-1); } public double stddev() { return Math.sqrt(this.var()); } }均值的更新很好理解,那么方差的更新是怎么做到的呢?
公式推导:
均值定义:
方差定义:
均值的递推:
方差的推导:
其中
这样递推的好处:
1.实时更新数据;2.减小运算量;3.更好的避免四舍五入带来的误差。
相关文章推荐
- 一种写程序快速计算常系数线性齐次递推关系的指定项的方法
- numpy.mean和numpy.random.multivariate_normal(依据均值和协方差生成数据,提醒:计算协方差别忘了转置)
- ECharts 统计扩展 ecStat.js, 可以进行回归分析和均值方差计算
- OpenCV 计算均值方差
- 利用积分图像法快速计算Haar特征
- C#图像处理之图像均值方差计算的方法
- MATLAB中均值、方差、均方差的计算方法
- 基于Opencv计算图像的均值和方差
- 利用矢量计算快速判定一点在直线的哪一侧
- 数字信号处理中均值、方差、均方值、均方差计算和它们的物理意义
- [python]使用python实现Hadoop MapReduce程序:计算一组数据的均值和方差
- 利用“三角化”计算行列式快速求解程序(验证过很多题目的,绝对准确)
- matlab 利用while循环计算平均值和方差
- 利用虚拟机快速搭建N个分布式计算节点服务器
- 利用matlab求图像均值和方差的几种方法
- 均值与方差计算
- 二、利用积分图像法快速计算Haar特征
- 利用矢量计算快速判定一点在直线的哪一侧
- 利用方差和标准差计算学生成绩的稳定性
- matlab 利用while循环计算平均值和方差(第二版)