check_itemscale {performance} | R Documentation |
Describe Properties of Item Scales
Description
Compute various measures of internal consistencies
applied to (sub)scales, which items were extracted using
parameters::principal_components()
or parameters::factor_analysis()
.
Usage
check_itemscale(x, factor_index = NULL, verbose = TRUE)
Arguments
x |
An object of class |
factor_index |
If |
verbose |
Toggle warnings and messages. If |
Details
check_itemscale()
calculates various measures of internal consistencies,
such as Cronbach's alpha, item difficulty or discrimination etc. on subscales
which were built from several items. Subscales are retrieved from the results
of parameters::principal_components()
or parameters::factor_analysis()
,
i.e. based on how many components were extracted from the PCA, respectively
how many factors were extracted from the factor analysis. check_itemscale()
retrieves those variables that belong to a component and calculates the above
mentioned measures.
Value
A list of data frames, with related measures of internal consistencies of each subscale.
Note
-
Item difficulty should range between 0.2 and 0.8. Ideal value is
p+(1-p)/2
(which mostly is between 0.5 and 0.8). Seeitem_difficulty()
for details. For item discrimination, also known as corrected item-total correlations, acceptable values are 0.20 or higher; the closer to 1.00 the better. See
item_discrimination()
for more details. If an item discrimination is negative, the corresponding item probably need to be reverse-coded (which can be done withdatawizard::reverse()
).In case the total Cronbach's alpha value is below the acceptable cut-off of 0.7 (mostly if an index has few items), the mean inter-item-correlation is an alternative measure to indicate acceptability. Satisfactory range lies between 0.2 and 0.4. See also
item_intercor()
.
References
Briggs SR, Cheek JM (1986) The role of factor analysis in the development and evaluation of personality scales. Journal of Personality, 54(1), 106-148. doi: 10.1111/j.1467-6494.1986.tb00391.x
Examples
# data generation from '?prcomp', slightly modified
C <- chol(S <- toeplitz(0.9^(0:15)))
set.seed(17)
X <- matrix(rnorm(1600), 100, 16)
Z <- X %*% C
pca <- parameters::principal_components(
as.data.frame(Z),
rotation = "varimax",
n = 3
)
pca
check_itemscale(pca)
# as data frame
check_itemscale(
as.data.frame(Z),
factor_index = parameters::closest_component(pca)
)