Bartlett's test that a correlation matrix is an identity matrix
Bartlett's test that a correlation matrix is an identity matrix
Bartlett (1951) proposed that -ln(det(R)*(N-1 - (2p+5)/6) was distributed as chi square if R were an identity matrix. A useful test that residuals correlations are all zero. Contrast to the Kaiser-Meyer-Olkin test.
cortest.bartlett(R, n =NULL,diag=TRUE)
Arguments
R: A correlation matrix. (If R is not square, correlations are found and a warning is issued.
n: Sample size (if not specified, 100 is assumed).
diag: Will replace the diagonal of the matrix with 1s to make it a correlation matrix.
Details
More useful for pedagogical purposes than actual applications. The Bartlett test is asymptotically chi square distributed.
Note that if applied to residuals from factor analysis (fa) or principal components analysis (principal) that the diagonal must be replaced with 1s. This is done automatically if diag=TRUE. (See examples.)
An Alternative way of testing whether a correlation matrix is factorable (i.e., the correlations differ from 0) is the Kaiser-Meyer-Olkin KMO test of factorial adequacy.
Returns
chisq: Assymptotically chisquare
p.value: Of chi square
df: The degrees of freedom
References
Bartlett, M. S., (1951), The Effect of Standardization on a chi square Approximation in Factor Analysis, Biometrika, 38, 337-344.
Author(s)
William Revelle
See Also
cortest.mat, cortest.normal, cortest.jennrich
Examples
set.seed(42)x <- matrix(rnorm(1000),ncol=10)r <- cor(x)cortest.bartlett(r)#random data don't differ from an identity matrix#data(bfi)cortest.bartlett(bfi[1:200,1:10])#not an identity matrixf3 <- fa(Thurstone,3)f3r <- f3$resid
cortest.bartlett(f3r,n=213,diag=FALSE)#incorrectcortest.bartlett(f3r,n=213,diag=TRUE)#correct (by default)