1

我有一个集合列表和每个集合的一些基本统计数据(项目数、最小值、最大值、平均值、标准差)。我想为所有组合计算相同的统计数据。计算总计数、最小值最大值和平均值很容易,但我不确定如何计算总标准差。

数据如下所示:

Count        Max      Min      Mean      Stddev
1,027,671    781      68       57.8      32.79
  839,473    552      54       61.3      48.53
3,012,102    890      41       64.9      41.92

一起生成所有集合的统计信息:

4,879,246    890      41       62.8      ???
4

2 回答 2

2

我假设您正在编写维护分布的代码,而不仅仅是使用一些已经计算出标准偏差的数据。标准开发不是为计算机维护的真正自然参数。相反,您应该维护项目的数量、总和以及项目总和的平方,然后您可以轻松地从这 3 条原始信息中计算分布的均值和标准差。我在此代码中使用此策略。add 操作支持合并两个分布。注意它的实现是多么简单。http://github.com/rrenaud/dominionstats/blob/master/stats.py#L17

于 2012-12-15T21:37:58.330 回答
0

我认为不可能从您拥有的数据中准确计算出这一点。问题是标准偏差取决于组合数据集的平均值,该平均值不一定与单个平均值相同,还取决于每个点与该平均值的距离,您没有精确(但可能是近似值)使用权。

于 2012-12-15T21:30:38.833 回答