An R
package for doing inference with coefficient alpha (Cronbach, 1951) and standardized alpha (Falk & Savalei, 2011). Many methods are supported, with special emphasis on small samples and non-normality.
Install from CRAN:
Or use the development version.
Call the library
function and load some data:
library("alphaci")
library("psychTools")
x <- bfi[, 1:5]
x[, 1] <- 7 - x[, 1] # Reverse-coded item.
head(x)
#> A1 A2 A3 A4 A5
#> 61617 5 4 3 4 4
#> 61618 5 4 5 2 5
#> 61620 2 4 5 4 4
#> 61621 3 4 6 5 5
#> 61622 5 3 3 4 5
#> 61623 1 6 5 6 5
Then calculate an asymptotically distribution-free confidence interval for ,
alphaci(x)
#> Call: alphaci(x = x)
#>
#> 95% confidence interval (n = 2709).
#> 0.025 0.975
#> 0.6828923 0.7246195
#>
#> Sample estimates.
#> alpha sd
#> 0.7037559 0.5536964
You can also calculate confidence intervals for standardized alpha
alphaci_std(x)
#> Call: alphaci_std(x = x)
#>
#> 95% confidence interval (n = 2709).
#> 0.025 0.975
#> 0.6938373 0.7331658
#>
#> Sample estimates.
#> alpha sd
#> 0.7135016 0.5218675
alphaci
supports three basic asymptotic confidence interval constructios. The asymptotically distribution-free interval of Maydeu-Olivares et al. 2007, the pseudo-elliptical construction of Yuan & Bentler (2002), and the normal method of van Zyl et al., (1999).
Method | Description |
---|---|
adf |
The asymptotic distribution free method (Maydeu-Olivares et al. 2007). The method is asymptotically correct, but has poor small-sample performance. |
elliptical |
The elliptical or pseudo-elliptical kurtosis correction (Yuan & Bentler, 2002). Uses the unbiased sample estimator of the common kurtosis (Joanes, 1998). Has better small-sample performance than adf and normal if the kurtosis is large and is small. |
normal |
Assumes normality of (van Zyl et al., 1999). This method is not recommended since it yields too short confidence intervals when the excess kurtosis of is larger than . |
Standardized alpha, computed with alpha_std
, support the same type
arguments. Their formulas can be derived using the methods of Hayashi and Kamata (2005) and Neudecker (2007).
In addition, you may transform the intervals using one of four transforms:
The option bootstrap
does studentized bootstrapping Efron, B. (1987) with n_reps
repetitions. If bootstrap = FALSE
, an ordinary normal approximation will be used. The studentized bootstrap intervals are is a second-order correct, so its confidence intervals will be better than the normal approximation when is sufficiently large.
Finally, the option parallel = TRUE
can be used, which is suitable if covariance matrix is compound symmetric. If the distribution is normal or (pseudo-)elliptic, it can be used to simplify the expression for the asymptotic variance of alpha and standardized alpha to
where is the common kurtosis parameter.
There are several R
packages that make confidence intervals for coefficient alpha, but not much support for standardized alpha. Most packages use some sort of normality assumption.
The alpha
and alpha.ci
functions of psych
calculates confidence intervals for coefficient alpha following normal theory. semTools
calculates numerous reliability coefficients with its reliability
function. The Cronbach
package provides confidence intervals based on normal theory, as does the alpha.CI
function of psychometric
. Confidence intervals for both alphas can, in principle, be calculated using structural equation modeling together with the delta method. Packages such as lavaan
can be used for this purpose, but this is seldom done.
If you encounter a bug, have a feature request or need some help, open a Github issue. Create a pull requests to contribute.