カイ二乗分布に従うデータとカイ二乗検定【統計検定2級・母集団のパラメータ未知の検定】


カイ二乗分布を使ったカイ二乗検定が統計検定2級で出てきますが、これをRを使って理解していきます。

カイ二乗値とは

まず一番簡単な例として標準正規分布から得られたデータの二乗の合計値が考えられる。
標準正規分布とは平均0標準偏差1の分布である。

標準正規分布から1つデータをとる。
このデータを2乗する。

ここでデータの性質を考える

標準正規分布から得た1つのデータの二乗ということは、データの性質としては
・平均0に近い値が多く得られる
・二乗にしているから完全に正の値である
・二乗にしているから1よりも小さい値はより小さくなる

こんな図になる。

上記では1つとってきたが、同じようにもう一つとってきて、足し合わせたものはどうなるか

1つの値の二乗ならば0に近い値が多かったが、2つの値の二乗を合計するので少しだけ大きい値にズレていることが分かる。

4つくらい合計してみると・・・

0に近い部分は少なくなった。
なぜなら平均0から得られる確率が一番高いとはいえども4回もサンプルをとってくると、
0よりもずれた値をとっているデータが多くなる。

そんな性質を表現している分布がカイ二乗分布と呼ばれる

この場合のカイ二乗分布は標準正規分布から4つデータをとってきて合計しているので
4が自由度となる。
念のため自由度4の理論的な分布を確認する。

標準正規分布から抽出したデータの二乗ということは

抽出データをxとする。標準正規分布の平均は0であるので、平均からデータまでの距離を求めたいとするならば

(x - 0)^2

と書ける。
これがカイ二乗分布に従っていた。

標準正規分布とはZスコアと等しい

抽出したデータをxとすると
母集団既知の場合、Zスコアは

Zスコア = (x - 母集団平均) / 母集団標準偏差

で変形できるのであった。
詳しくは私の昔の記事に譲る。

つまりZスコアの二乗はカイ二乗分布に従うということ想定できる。

検定では「母集団標準偏差」が未知であるときに母集団標準偏差を推定しなさい。
と言われる。
信頼度95%で検定するのならば自由度n(データ数)に従うカイ二乗分布の下側2.5%、上側2.5%地点と比較して、
範囲を求めてやれば母集団標準偏差の信頼区間を求められる。

母平均すら不明のとき

この時はサンプルデータの平均を母集団平均の位置に置き換えて
自由度をn-1にする。
この辺りは別の時にやる気があれば検証する・・・かも・・・

以下にコードを置いておくので適当に標本平均でZスコアへ標準化して自由度n-1のグラフと比較してみてほしい。

n=10000
m=0
s=1

hist(rnorm(n,m,s))

norm_data <- rnorm(n,m,s)

bind <- NULL
bindn <- NULL
bindn2 <- NULL

for(i in 1:10000){

set_number <- sample(n)
sample_1 <- norm_data[set_number[1]]
sample_2 <- norm_data[set_number[2]]
sample_3 <- norm_data[set_number[3]]
sample_4 <- norm_data[set_number[4]]

sample_sum_square <- c(sample_1**2 + sample_2**2 + sample_3**2 + sample_4**2)

bind <- c(bind, sample_sum_square)
bindn <- c(bindn, sample_1**2)
bindn2 <- c(bindn2, sample_1**2 + sample_2**2)

}

hist(bindn,breaks=100)

hist(bindn2,breaks=100)

hist(bind,breaks=100)

hist(rchisq(10000, 4),breaks=100)