散布度基準②その1-標本分散(Sample Dispersion)…偏差^2/偏差数
*このケースは全件抽出なのでこれでOK。「二乗する」というアイディアは最小二乗法と縁が深く、広く普及している。平均値が代表値となる。
散布度基準②その1-不偏分散(Unbiased Dispersion)…偏差^2の合計/(偏差数-1)
*このケースは標本抽出なのでこれでOK。「二乗する」というアイディアは自体は最小二乗法に由来し、平均値が代表値となる。
それにつけても、何故標本分散(Sample variance)sum*1/length(x)の分母はlength(x)で、不偏分散(Unbiased dispersion)sum*2/length(x)の分母は(length(x)-1)なのでしょうか?
こういう疑問に突き当たった時は実際にシミュレーションしてみるに限ります。
分散だけn−1で割るのは、どうも不公平な感じがする、という方がいるかもしれない。試しに、実際のデータで見てみよう。
まず、N(50, 10) の乱数を 5000 ケース発生させ、10 ケースで 1 サンプルとして標本分散と不偏分散を求める。
次に、サンプルの平均値を求め、グラフ化する。標本分散は母分散100 から外れたところを推移し、決して母分散に近づくことはない。
統計言語Rによる描画
Time_code<-seq(1,5000)
SD0<-NULL #標本分散初期化
UD0<-NULL #不偏分散初期化#試行の実施
for (i in Time_code){
smp<-rnorm(10,mean=50,sd=10)
#標本分散の算出結果追加
SD0<-c(SD0,sum*3^2)/length(smp))
#不偏分散の算出結果追加
UD0<-c(UD0,sum*4^2)/(length(smp)-1))
}#描画データ準備
Sample_Dispersion<-NULL
Unbiased_Dispersion<-NULL
for (i in Time_code){Sample_Dispersion<-c(Sample_Dispersion,mean(SD0[1:i]))
Unbiased_Dispersion<-c(Unbiased_Dispersion,mean(UD0[1:i]))
}#グラフ描画
plot(Time_code,Sample_Dispersion,type="l",col=rgb(0,1,0),xlim=c(0,5000),ylim=c(50,150),main="Sample &Unbiased Dispersion",xlab="Number of Samples",ylab="Dispersions")
par(new=T) #上書き
plot(Time_code,Unbiased_Dispersion,type="l",col=rgb(0,0,1),xlim=c(0,5000),ylim=c(50,150),main="",xlab="",ylab="")#母分散追加
abline(h=100,col=rgb(1,0,0))
#凡例
legend("bottomright", legend=c("Sample Dispersion","Unbiased Dispersion","Mother dispersion"), lty=c(1,1,1), col=c(rgb(0,1,0),rgb(0,0,1),rgb(1,0,0)))
最終結果
Sample_Dispersion[5000]
[1] 90.08727
Unbiased_Dispersion[5000]
[1] 100.097
本当にその通り推移してますね…