【问题标题】:Unbiased variance estimate (n-1) simulation in python failspython中的无偏方差估计(n-1)模拟失败
【发布时间】:2018-04-21 00:48:40
【问题描述】:

我正在尝试编写一个小程序来模拟 Python3 中随机数的采样。但这似乎与我的意图相反。我究竟做错了什么?这一定非常简单,但我不明白。

import random
import statistics
import math

pcounter = 0
counter = 0
for loop in range(1000):
    l = []
    for x in range(500):
        l.append(random.randint(1,1000))

    m = statistics.mean(l)
    v = list(l)
    v[:] = [(x-m)**2 for x in v]
    realvariance = sum(v)/len(v)
    #print("Real Variance: " + str( sum(v)/len(v)))
    #print("Real Mean: " + str(m))


    sample = random.sample(l, 10)
    v = list(sample)
    #print(v)
    v[:] = [(x-m)**2 for x in v]
    samplem = statistics.mean(sample)
    samplebiasedvariance = sum(v)/len(v)
    samplevariance = sum(v)/(len(v)-1)

    print(samplebiasedvariance)
    print(samplevariance)
    print(realvariance)
    print((samplebiasedvariance - realvariance)**2 < (samplevariance - realvariance)**2)
    if (samplebiasedvariance - realvariance)**2 < (samplevariance - realvariance)**2:
        pcounter = pcounter + 1     
        print("biased Variance wins: " + str(pcounter))

    else:
        counter = counter + 1
        print("Variance wins: " + str(counter))

print("biased Variance wins: " + str(pcounter))
print("Variance wins: " + str(counter))

这会导致:

biased Variance wins: 563
Variance wins: 437

但应该反过来:我预计有偏方差会比使用 (n-1) 计算的无偏方差更差。因此,它应该更接近真实总体方差(realvariance)然后是有偏差的。

【问题讨论】:

  • 你所说的“反过来”到底是什么意思?
  • 好吧,我预计有偏方差会比使用 (n-1) 计算的无偏方差更差。因此它应该更接近真实的总体方差(realvariance)。

标签: python statistics


【解决方案1】:

“偏见”是一个误导性的术语——它在数学公式中暗示了某种道德问题。

您所看到的本质上是两个方差估计量的均方误差。 (更接近实际值的均方误差更小。)事实证明,无偏样本方差比通常的有偏样本方差具有更大的均方误差,而通常的有偏样本方差又比使用 1/ 计算的样本方差具有更大的均方误差。 (n + 1) 而不是 1/n 或 1/(n - 1)。

如果我理解正确,如果您将 1/(n + 1) 估算器放入您的程序中,您应该会发现它通常比其他两个更接近实际值。

该主题在维基百科页面variance 的“总体方差和样本方差”标题下进行了讨论。毫无疑问还有很多其他资源。

【讨论】:

  • 这正是我所期望的:n-1 比 n 好,n 比 n+1 好。但我得到 n 比 n-1 好,n -1 比 n+1 好。
  • 嗯,结果表明mse(n + 1)
猜你喜欢
  • 1970-01-01
  • 2017-01-31
  • 1970-01-01
  • 2019-09-29
  • 1970-01-01
  • 1970-01-01
  • 2020-06-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多