如何用 python 计算加权标准差
当数据集中的某些值比其他值具有更高的权重时,加权标准差是衡量数据集中值的分散性的有用方法。
加权标准差的计算公式为:
金子:
- N:观察总数
- M:非零权重的数量
- w i :权重向量
- x i :数据值向量
- x :加权平均值
在 Python 中计算加权标准差的最简单方法是使用 statsmodels 包中的DescrStatsW()函数:
DescrStatsW(values, weights=weights, ddof= 1 ). std
下面的例子展示了如何在实际中使用这个功能。
示例:Python 中的加权标准差
假设我们有以下数据值数组和相应的权重:
#define data values values = [14, 19, 22, 25, 29, 31, 31, 38, 40, 41] #define weights weights = [1, 1, 1.5, 2, 2, 1.5, 1, 2, 3, 2]
以下代码显示了如何计算该数据值数组的加权标准差:
from statsmodels. stats . weightstats import DescrStatsW
#calculate weighted standard deviation
DescrStatsW(values, weights=weights, ddof= 1 ). std
8.570050878426773
加权标准差为8.57 。
请注意,我们还可以使用var来快速计算加权方差:
from statsmodels. stats . weightstats import DescrStatsW
#calculate weighted variance
DescrStatsW(values, weights=weights, ddof= 1 ). var
73.44577205882352
加权方差结果为73,446 。
其他资源
以下教程解释了如何在其他统计软件中计算加权标准差: