CronbachAlpha.Rd
Cronbach's alpha is a measure of internal consistency and often used for validating psychometric tests. It determines the internal consistency or average correlation of items in a survey instrument to gauge its reliability. This reduces to Kuder-Richardson formula 20 (KR-20) when the columns of the data matrix are dichotomous.
CronbachAlpha(x, conf.level = NA, cond = FALSE, na.rm = FALSE)
\(n \times m\) matrix or dataframe with item responses, k subjects (in rows) m items (in columns).
confidence level of the interval. If set to NA
(which is the default) no confidence interval will be calculated.
logical. If set to TRUE
, alpha is additionally calculated for the dataset with each item left out.
logical, indicating whether NA
values should be stripped before the computation proceeds. If set to TRUE
only the complete cases of the ratings will be used. Defaults to FALSE
.
Either a numeric value or
a named vector of 3 columns if confidence levels are required (estimate, lower and upper ci) or
a list containing the following components, if the argument cond
is set to TRUE
:
Cronbach's Alpha, either the single value only or with confidence intervals
The alpha that would be realized if the item were excluded
Cohen, J. (1960), A coefficient of agreement for nominal scales. Educational and Psychological Measurement, 20, 37-46.
set.seed(1234)
tmp <- data.frame(
item1=sample(c(0,1), 20, replace=TRUE),
item2=sample(c(0,1), 20, replace=TRUE),
item3=sample(c(0,1), 20, replace=TRUE),
item4=sample(c(0,1), 20, replace=TRUE),
item5=sample(c(0,1), 20, replace=TRUE)
)
CronbachAlpha(tmp[,1:4], cond=FALSE, conf.level=0.95)
#> Cronbach Alpha lwr.ci upr.ci
#> 0.4029851 0.1565282 0.5912006
CronbachAlpha(tmp[,1:4], cond=TRUE, conf.level=0.95)
#> $unconditional
#> Cronbach Alpha lwr.ci upr.ci
#> 0.4029851 0.1565282 0.5912006
#>
#> $condCronbachAlpha
#> Item Cronbach Alpha lwr.ci upr.ci
#> 1 1 0.1574074 -0.293641918 0.4692256
#> 2 2 0.5241379 0.269403595 0.7002402
#> 3 3 0.2537764 -0.145685462 0.5299313
#> 4 4 0.3455056 -0.004852612 0.5877143
#>
CronbachAlpha(tmp[,1:4], cond=FALSE)
#> [1] 0.4029851
CronbachAlpha(tmp[,1:2], cond=TRUE, conf.level=0.95)
#> $unconditional
#> Cronbach Alpha lwr.ci upr.ci
#> -0.04678363 -0.97917368 0.44635684
#>
#> $condCronbachAlpha
#> list()
#>
if (FALSE) { # \dontrun{
# Calculate bootstrap confidence intervals for CronbachAlpha
library(boot)
cronbach.boot <- function(data,x) {CronbachAlpha(data[x,])[[3]]}
res <- boot(datafile, cronbach.boot, 1000)
quantile(res$t, c(0.025,0.975)) # two-sided bootstrapped confidence interval of Cronbach's alpha
boot.ci(res, type="bca") # adjusted bootstrap percentile (BCa) confidence interval (better)
} # }