集合里加入一个新数字,快速计算出这个新方差和平均值
阅读数:544 评论数:0
跳转到新版页面分类
数学
正文
已知一组数$(x_1,x_2,...,x_n)$的均值$\bar{x}$和方差$s_n$,现在加入一个数y,求新的一组数均值和方差?
快速解决方法:
均值$\acute{\bar{x}} = \frac{(n*\bar{x}+y)}{n+1}$,后面会用到这个$\acute{\bar{x}}$
方差$ \acute{s_n}^{2}=\frac{(x_1-\bar{x}+\bar{x}-\acute{\bar{x}})^{2}+...+(x_n-\bar{x}+\bar{x}-\acute{\bar{x}})^{2}+(y-\acute{\bar{x}})^{2}}{n+1} $
这个公式就是把均值变成$\bar{x}-\bar{x}+\acute{\bar{x}}$
将中括号中的平方项展开如$(x_1-\bar{x}+\bar{x}-\acute{\bar{x}})=(x_1-\bar{x})^{2}+2(\bar{x}-\acute{\bar{x}})*(x_1-\bar{x})+(\bar{x}-\acute{\bar{x}})^{2}$
然后重新组合$(x_1-\bar{x})^{2}+...+(x_n-\bar{x})^2$这一部分就是原来的方差公式即${s_n}^{2}*n$
$2*(\bar{x}-\acute{\bar{x}})*(x_1-\bar{x})+...+2*(\bar{x}-\acute{\bar{x}})*(x_n-\bar{x})$
$=2*(\bar{x}-\acute{\bar{x}})*(x_1+...+x_n-n*\bar{x})$
$=2*(\bar{x}-\acute{\bar{x}})*0=0$
所以
$\acute{s_n}^{2}=\frac{{s_n}^{2}*n+n*( \bar{x}-\acute{\bar{x}})^{2}+(y-\acute{\bar{x}})^{2}}{n+1}$