alpha {psych} | R Documentation |
Internal consistency measures of reliability range from omega_hierchical to alpha to omega_total. This function reports two estimates: Cronbach's coefficient alpha and Guttman's lambda_6. Also reported are item - whole correlations, alpha if an item is omitted, and item means and standard deviations.
alpha(x, keys=NULL,cumulative=FALSE, title=NULL, max=10,na.rm = TRUE,check.keys=TRUE)
x |
A data.frame or matrix of data, or a covariance or correlation matrix |
keys |
If some items are to be reversed keyed, then the direction of all items must be specified in a keys vector |
title |
Any text string to identify this run |
cumulative |
should means reflect the sum of items or the mean of the items. The default value is means. |
max |
the number of categories/item to consider if reporting category frequencies. Defaults to 10, passed to |
na.rm |
The default is to remove missing values and find pairwise correlations |
check.keys |
if TRUE, then find the first principal component and reverse key items with negative loadings. Give a warning if this happens. |
Alpha is one of several estimates of the internal consistency reliability of a test.
Surprisingly, 105 years after Spearman (1904) introduced the concept of reliability to psychologists, there are still multiple approaches for measuring it. Although very popular, Cronbach's α (1951) underestimates the reliability of a test and over estimates the first factor saturation.
alpha(Cronbach, 1951) is the same as Guttman's lambda3 (Guttman, 1945) and may be found by
Lambda 3 = (n)/(n-1)(1-tr(Vx)/(Vx) = (n)/(n-1)(Vx-tr(Vx)/Vx = alpha
Perhaps because it is so easy to calculate and is available in most commercial programs, alpha is without doubt the most frequently reported measure of internal consistency reliability. Alpha is the mean of all possible spit half reliabilities (corrected for test length). For a unifactorial test, it is a reasonable estimate of the first factor saturation, although if the test has any microstructure (i.e., if it is “lumpy") coefficients beta (Revelle, 1979; see ICLUST
) and omega_hierchical (see omega
) are more appropriate estimates of the general factor saturation. omega_total (see omega
) is a better estimate of the reliability of the total test.
Guttman's Lambda 6 (G6) considers the amount of variance in each item that can be accounted for the linear regression of all of the other items (the squared multiple correlation or smc), or more precisely, the variance of the errors, e_j^2, and is
lamada 6 = 1 - sum(e^2)/Vx = 1-sum(1-r^2(smc))/Vx.
The squared multiple correlation is a lower bound for the item communality and as the number of items increases, becomes a better estimate.
G6 is also sensitive to lumpyness in the test and should not be taken as a measure of unifactorial structure. For lumpy tests, it will be greater than alpha. For tests with equal item loadings, alpha > G6, but if the loadings are unequal or if there is a general factor, G6 > alpha. alpha is a generalization of an earlier estimate of reliability for tests with dichotomous items developed by Kuder and Richardson, known as KR20, and a shortcut approximation, KR21. (See Revelle, in prep).
Alpha and G6 are both positive functions of the number of items in a test as well as the average intercorrelation of the items in the test. When calculated from the item variances and total test variance, as is done here, raw alpha is sensitive to differences in the item variances. Standardized alpha is based upon the correlations rather than the covariances.
More complete reliability analyses of a single scale can be done using the omega
function which finds omega_hierchical and omega_total based upon a hierarchical factor analysis.
Alternative functions score.items
and cluster.cor
will also score multiple scales and report more useful statistics. “Standardized" alpha is calculated from the inter-item correlations and will differ from raw alpha.
Three alternative item-whole correlations are reported, two are conventional, one unique. r is the correlation of the item with the entire scale, not correcting for item overlap. r.drop is the correlation of the item with the scale composed of the remaining items. Although both of these are conventional statistics, they have the disadvantage that a) item overlap inflates the first and b) the scale is different for each item when an item is dropped. Thus, the third alternative, r.cor, corrects for the item overlap by subtracting the item variance but then replaces this with the best estimate of common variance, the smc.
total |
a list containing |
raw_alpha |
alpha based upon the covariances |
std.alpha |
The standarized alpha based upon the correlations |
G6(smc) |
Guttman's Lambda 6 reliability |
average_r |
The average interitem correlation |
mean |
For data matrices, the mean of the scale formed by summing the items |
sd |
For data matrices, the standard deviation of the total score |
alpha.drop |
A data frame with all of the above for the case of each item being removed one by one. |
item.stats |
A data frame including |
r |
The correlation of each item with the total score (not corrected for item overlap) |
r.cor |
Item whole correlation corrected for item overlap and scale reliability |
r.drop |
Item whole correlation for this item against the scale without this item |
mean |
for data matrices, the mean of each item |
sd |
For data matrices, the standard deviation of each item |
response.freq |
For data matrices, the frequency of each item response (if less than 20) |
William Revelle
Cronbach, L.J. (1951) Coefficient alpha and the internal strucuture of tests. Psychometrika, 16, 297-334.
Guttman, L. (1945). A basis for analyzing test-retest reliability. Psychometrika, 10 (4), 255-282.
Revelle, W. (in preparation) An introduction to psychometric theory with applications in R. Springer. (Available online at http://personality-project.org/r/book).
Revelle, W. Hierarchical Cluster Analysis and the Internal Structure of Tests. Multivariate Behavioral Research, 1979, 14, 57-74.
Revelle, W. and Zinbarg, R. E. (2009) Coefficients alpha, beta, omega and the glb: comments on Sijtsma. Psychometrika, 2009.
omega
, ICLUST
, guttman
, score.items
, cluster.cor
r4 <- sim.congeneric() alpha(r4) r9 <- sim.hierarchical() alpha(r9) #an example of two independent factors that produce reasonable alphas #this is a case where alpha is a poor indicator of unidimensionality two.f <- sim.item(8) alpha(two.f,keys=c(rep(1,4),rep(-1,4))) #an example with discrete item responses -- show the frequencies items <- sim.congeneric(N=500,short=FALSE,low=-2,high=2,categorical=TRUE) #500 responses to 4 discrete items a4 <- alpha(items$observed) #item response analysis of congeneric measures a4 #summary just gives Alpha summary(a4)