最近经常跟数值计算的东西打交道,特别是大量样本的统计计算,在常见的描述统计结果中,最常用到的是一下几种:
- 一组样本的平均价值
- 一组样本的中值
- 一组样本中的最小值
- 一组样本中的最大值
- 一组样本的和
- 一组样本的标准方差
其中,样本N(X[1].....X[n])的中值的计算与样本的总数有一定的关系:
当样本数量为奇数(odd)时,中值 median=X[n/2]
当样本数量为偶数(even)时,中值 median=(X[n/2] + X[n/2])/2
标准方差的计算公式可以参考维基百科http://en.wikipedia.org/wiki/Standard_deviation, 其中样
本的标准方差是指以N为分母(denominator )计算结果,标准方差样本是指以N-1作为分母, N-1
又叫自由度数。
在标准的apache common math的组件中,已经包含了一组统计学计算的package,可以很好的计算
上面的结果。而它的标准方差的计算公式正是用N-1作为分母计算出来的结果。这个组件的下载URL:
http://commons.apache.org/math/
下面是本人基于Java实现的代码,计算结果与apache common math中的DescriptiveStatistics的
结果完全一致
如有误导,后果自负!