バートレットの球形性テストのガイド
バートレットの球面性検定では、観測された相関行列と単位行列を比較します。基本的に、多くの要因で要約できる変数間に何らかの冗長性があるかどうかをチェックします。
検定の帰無仮説は、変数が直交している、つまり無相関であるということです。対立仮説は、変数は直交ではない、つまり、相関行列が単位行列から大きく乖離する点と十分に相関している、というものです。
このテストは、主成分分析や因子分析などのデータ削減手法を使用する前に、データ削減手法が実際に有意義にデータを圧縮できることを検証するために実行されることがよくあります。
注: Bartlett の球面度検定は 、Bartlett の分散等価検定と同じではありません。この 2 つは名前が似ているため、よく混同されます。
相関行列と単位行列
相関行列は、単に変数間の相関係数を示す値の行列です。たとえば、次の相関行列は、プロ バスケットボール チームのさまざまな変数間の相関係数を示しています。
相関係数は-1 から 1 まで変化します。値が 0 から離れるほど、2 つの変数間の相関が高くなります。
恒等行列とは、対角線上の値がすべて 1 で、その他の値がすべて 0 である行列です。
この場合、この行列の数値が相関係数を表している場合、これは各変数が他のすべての変数と完全に直交している (つまり、「相関がない」) ことを意味し、したがって PCA や因子分析などのデータ削減手法では次のことを行うことができません。意味のある方法でデータを圧縮します。
したがって、バートレットの球面性テストを実行する理由は、データセット内の変数の相関行列が単位行列から大幅に乖離していることを確認し、リダクション手法データの使用が適切であることを確認するためです。
Bartlett の球面度検定の p 値が選択した有意水準 (一般的な選択は 0.10、0.05、および 0.01) より小さい場合、このデータセットはデータ削減手法に適しています。
R でバートレットの球面性テストを実行する方法
R で Bartlett の球面性テストを実行するには、 psychライブラリのcortest.bartlett()関数を使用できます。この関数の一般的な構文は次のとおりです。
cortest.bartlett(R, n)
- R: データセットの相関行列
- n: データセットのサンプルサイズ
次のコードは、作成した偽のデータセットに対してこのテストを実行する方法を示しています。
#make this example reproducible set.seed(0) #create fake data data <- data.frame(A = rnorm(50, 1, 4), B = rnorm(50, 3, 6), C = rnorm(50, 5, 8)) #view first six rows of data head(data) #ABC #1 6.0518171 4.5968242 11.25487348 #2 -0.3049334 0.7397837 -1.21421297 #3 6.3191971 17.6481878 0.07208074 #4 6.0897173 -1.7720347 5.37264242 #5 2.6585657 2.6707352 -4.04308622 #6 -5.1598002 4.5008479 9.61375026 #find correlation matrix of data cor_matrix <- cor(data) #view correlation matrix cor_matrix #ABC #A 1.0000000 0.1600155667 0.2825308511 #B 0.1600156 1.0000000000 0.0005358384 #C 0.2825309 0.0005358384 1.0000000000 #load psych library library(psych) #perform Bartlett's Test of Sphericity cortest.bartlett(cor_matrix, n = nrow(data)) #$chisq #[1] 5.252329 # #$p.value #[1] 0.1542258 # #$df #[1] 3
カイ二乗検定統計量は 5.252329 で、対応する p 値は 0.1542258 で、これは有意水準 (0.05 を使用します) を下回っていません。したがって、これらのデータはおそらく PCA または因子分析には適していません。
これを簡単に言うと、データセット内の 3 つの変数は十分に相関していないため、PCA や因子分析などのデータ削減手法では、これらの変数を線形結合に圧縮して、データ内に存在する有意な分散を捕捉することが困難になります。