如何计算加权标准差?在 Excel 中?

机器算法验证 标准差 擅长 加权平均数
2022-02-07 20:16:22

所以,我有一个百分比数据集,如下所示:

100   /   10000   = 1% (0.01)
2     /     5     = 40% (0.4)
4     /     3     = 133% (1.3) 
1000  /   2000    = 50% (0.5)

我想找到百分比的标准偏差,但要根据它们的数据量加权。即,第一个和最后一个数据点应该主导计算。

我怎么做?有没有一种简单的方法可以在 Excel 中做到这一点?

4个回答

加权标准差的公式为

i=1Nwi(xix¯)2(M1)Mi=1Nwi,

在哪里

N是观察次数。

M是非零权重的数量。

wi是权重

xi是观察值。

x¯是加权平均值。

请记住,加权平均值的公式是:

x¯=i=1Nwixii=1Nwi.

使用适当的权重来获得所需的结果。在您的情况下,我建议使用Number of cases in segmentTotal number of cases

要在 Excel 中执行此操作,您需要先计算加权平均值。然后在单独的列中计算其余的一定很容易。(xix¯)2

这些公式在各个地方都可用,包括 Wikipedia

关键是要注意它取决于权重的含义特别是,如果权重是频率(即您只是想避免将整个总和相加),如果权重实际上是每次测量的方差,或者如果它们只是一些外部值,您将得到不同的答案强加于您的数据。

在您的情况下,从表面上看,权重是频率,但它们不是您从频率生成数据,但在数据集中拥有 45 条 3 的记录和 15 条 4 的记录并不是一件简单的事情。相反,您需要使用最后一种方法。(实际上,所有这些都是垃圾——你真的需要使用更复杂的模型来生成这些数字!你显然没有吐出正态分布数字的东西,所以用标准偏差来表征系统这不是正确的做法。)

在任何情况下,具有“可靠性”权重的方差公式(以正常方式计算标准偏差)是

wi(xix)2wiwi2wi

其中是加权平均值。x=wixi/wi

您没有对权重的估计,我假设您希望将其与可靠性成正比。即使它们是由伯努利过程生成的,以你的方式取百分比也会使分析变得棘手,因为如果你得到 20 和 0 的分数,你就有无限的百分比。通过 SEM 的倒数加权是一种常见且有时最佳的做法。您或许应该使用贝叶斯估计或威尔逊得分区间

=SQRT(SUM(G7:G16*(H7:H16-(SUMPRODUCT(G7:G16,H7:H16)/SUM(G7:G16)))^2)/
     ((COUNTIFS(G7:G16,"<>0")-1)/COUNTIFS(G7:G16,"<>0")*SUM(G7:G16)))

G是权重,列H是值

如果我们将权重视为概率,那么我们按如下方式构建它们: 其中 - 数据量。

pi=viivi,
vi

接下来,显然加权平均值是

μ^=ipixi,
和方差:
σ^2=ipi(xiμ^)2