3
我生成一串N正常rvs(平均0 sd 1)與numpy,然後採用ddof = 1的樣本的標準偏差,這應該給我一個無偏估計量。該過程大致如下:numpy標準偏差估計偏差與ddof = 1
def genData(samples = 20, mean = 333.8, sd = 3.38):
bl = scipy.stats.norm.rvs(loc = mean, scale = sd, size = samples)
return [np.mean(bl), np.std(bl, ddof = 1)]
means = {}
sds = {}
n = 50000
for size in range(5,21):
x = [genData(size, mean = 0, sd = 1) for x in range(n)]
means[size] = map(lambda d: d[0], x)
sds[size] = map(lambda d: d[1], x)
然而,我遵守以下KDEs代替:
ddof = 1 ddof = 2 赦免由於樣本量較小粗糙曲線。
有ddof = 1的明顯偏差,ddof = 2可以消除。我在這裏做錯了什麼?
當我的ddof = 1 SDs被[維基百科上的校正因子](http://en.wikipedia.org/wiki/Unbiased_estimation_of_standard_deviation#Results_for_the_normal_distribution)分開時,我仍然看到一個偏差 – Bicubic
@Bicubic:如果它不是太很麻煩,你可以用新的情節更新你的原始問題嗎?我想親自看看情節。 – HerrKaputt
對於遲到的回覆感到抱歉。維基百科的修正功能正常工作。密度圖是誤導的,因爲在小樣本尺寸下模式偏離平均值。 – Bicubic