実装関連事項

各種プログラミング言語の基本的な書き方やソフトウェア等の使用方法について.

R にてバートレット検定 (Bartlett test) を行う.バートレット検定は,多群のデータの等分散性または分散の一様性,すなわち,各データの分散が等しいかどうかを検定する手法のひとつである.2群間の等分散性を検定するF検定 (F-test) に対し,バートレット検定は複数群のデータの等分散性を扱う.イギリスの統計学者,Maurice Stevenson Bartlett によって考案された.データ間の等分散性は分散分析をはじめとする多くの検定で要求される.R では,コマンド bartlett.test() にて実行することができる.

p値の計算

以下のサンプルサイズがそれぞれ,12,10,12,11からなるデータAからDが得られたときの各データ間における分散が等しいか否かをバートレット検定にて解析する.帰無仮説 (H0) は各群の母分散は全て等しいことである.

データA301, 311, 325, 291, 388, 402, 325, 361, 287, 261, 238, 362
データB197, 180, 178, 260, 247, 199, 179, 134, 163, 200
データC209, 331, 192, 155, 234, 290, 175, 116, 285, 216, 237, 301
データD343, 247, 316, 395, 324, 138, 245, 228, 214, 374, 235

最初に,以下のコマンドにて,上のデータAからDをまとめて変数 vx に格納する.

$ vx=c(301, 311, 325, 291, 388, 402, 325, 361, 287, 261, 238, 362, 197, 180, 178, 260, 247, 199, 179, 134, 163, 200, 209, 331, 192, 155, 234, 290, 175, 116, 285, 216, 237, 301, 343, 247, 316, 395, 324, 138, 245, 228, 214, 374, 235)

次に,以下のコマンドにて,読み込んだ各データの観測値のためのラベルを作成する.データAからDの標本数はそれぞれ,12,10,12,11である.以下のコマンドでは,rep(...) にてその標本数に対応するAからDの文字列ベクトルを発生させ,factor(...) にてそのベクトルを因子に変換し,それを新たな変数 fx に格納している.データの読み込み,およびその後の解析は,分散分析を行うときと同様にエクセルやテキストファイル形式のデータをデータフレームとしてそのまま読み込む方法でも良い.

$ fx=factor(rep(c("A", "B", "C", "D"), c(12, 10, 12, 11)))

以上の従属変数 (vx) および独立変数 (fx) を用いて,バートレット検定は,bartlett.test(従属変数 ~ 独立変数) のような形式で実行する.実際には以下のように打つ.

$ bartlett.test(formula=vx~fx)

これを実行した結果は以下のようになる.

 
        Bartlett test of homogeneity of variances

data:  vx by fx
Bartlett's K-squared = 5.2629, df = 3, p-value = 0.1535

結果で注目すべきは,p-value の値である.この0.1535がバートレット検定におけるp値を示している.以上より,有意水準5%でも1%であっても,得られたp値は有意水準より大きく (p > α),帰無仮説が保留され,その結果,各群の母分散は等しくないとはいえないという結論が導かれる.

別の入力方法によるp値の計算

別の方法でも,p値を計算することができる.この場合,以下のようにデータを別々の変数に読み込む.

$ va=c(301, 311, 325, 291, 388, 402, 325, 361, 287, 261, 238, 362)
$ vb=c(197, 180, 178, 260, 247, 199, 179, 134, 163, 200)
$ vc=c(209, 331, 192, 155, 234, 290, 175, 116, 285, 216, 237, 301)
$ vd=c(343, 247, 316, 395, 324, 138, 245, 228, 214, 374, 235)

これを用いてバートレット検定は以下のように行う.

$ bartlett.test(x=list(va,vb,vc,vd))

結果は以下のようになる.上と同じ結果が得られる.

 
        Bartlett test of homogeneity of variances

data:  list(va, vb, vc, vd)
Bartlett's K-squared = 5.2629, df = 3, p-value = 0.1535

オプション一覧

主に用いるオプションは以下の3つである.

オプション詳細
x検定対象の読み込むデータの指定 (必須).リストまたはベクトル形式.
gデータをリストとして読み込んだ場合は不要.ベクトルとして読み込んだ場合は,そのベクトルのグループを規定するベクトルまたは文字列ベクトルを指定.
formula分散分析等と同様に,従属変数と独立変数をあらわすベクトルと因子を (ベクトル ~ 因子) の形式で読み込める.
Hatena Google+