Item Analysis of a Scale or an Index

Daniel Lüdecke

2017-10-19

This document shows examples for using the sjt.itemanalysis() function of the sjPlot package.

Performing an item analysis of a scale or index

This function performs an item analysis with certain statistics that are useful for scale or index development. Following statistics are computed for each variable (column) of a data frame:

Optional, following statistics can be computed as well:

If the argument factor.groups is not NULL, the data frame df will be splitted into groups, assuming that factor.groups indicate those columns (variables) of the data frame that belong to a certain factor (see, for instance, return value of function sjt.pca() or sjp.pca() as example for retrieving factor groups for a scale). This is useful when you have perfomed a principal component analysis or factor analysis as first step, and now want to see whether the found factors / components represent a scale or index score.

To demonstrate this function, we first need some data:

Index score with one component

The simplest function call is just passing the data frame as argument. In this case, the function assumes that all variables of the data frame belong to one factor only.

sjt.itemanalysis(mydf)
Component 1
Variable Missings Mean SD Skew Item Difficulty Item Discrimination α if deleted
do you feel you cope well as caregiver? 0.77 % 3.12 0.58 -0.12 0.78 -0.241 0.539
do you find caregiving too demanding? 0.66 % 2.02 0.72 0.65 0.51 0.329 0.384
does caregiving cause difficulties in your relationship with your friends? 0.66 % 1.63 0.87 1.3 0.41 0.408 0.339
does caregiving have negative effect on your physical health? 1.10 % 1.77 0.87 1.05 0.44 0.441 0.324
does caregiving cause difficulties in your relationship with your family? 0.66 % 1.39 0.67 1.76 0.35 0.357 0.38
does caregiving cause financial difficulties? 0.88 % 1.29 0.64 2.42 0.32 0.416 0.366
do you feel trapped in your role as caregiver? 0.88 % 1.92 0.91 0.82 0.48 0.368 0.353
do you feel supported by friends/neighbours? 0.77 % 2.16 1.04 0.32 0.54 -0.029 0.534
do you feel caregiving worthwhile? 2.20 % 2.93 0.96 -0.45 0.73 -0.112 0.556
Mean inter-item-correlation=0.092 · Cronbach’s α=0.459

 

To interprete the output, we may consider following values as rule-of-thumbs for indicating a reliable scale:

Index score with more than one component

The items of the COPE index used for our example do not represent a single factor. We can check this, for instance, with a principle component analysis. If you know, which variable belongs to which factor (i.e. which variable is part of which component), you can pass a numeric vector with these group indices to the argument factor.groups. In this case, the data frame is divided into the components specified by factor.groups, and each component (or factor) is analysed.

# Compute PCA on Cope-Index, and retrieve 
# factor indices for each COPE index variable
factor.groups <- sjt.pca(mydf, no.output = TRUE)$factor.index

The PCA extracted two components. Now sjt.itemanalysis()

  1. performs an item analysis on both components, showing whether each of them is a reliable and useful scale or index score
  2. builds an index of each component, by standardizing each scale
  3. and adds a component-correlation-matrix, to see whether the index scores (which are based on the components) are highly correlated or not.
sjt.itemanalysis(mydf, factor.groups)
Component 1
Variable Missings Mean SD Skew Item Difficulty Item Discrimination α if deleted
do you find caregiving too demanding? 0.66 % 2.02 0.72 0.65 0.51 0.549 0.75
does caregiving cause difficulties in your relationship with your friends? 0.66 % 1.63 0.87 1.3 0.41 0.562 0.746
does caregiving have negative effect on your physical health? 1.10 % 1.77 0.87 1.05 0.44 0.576 0.742
does caregiving cause difficulties in your relationship with your family? 0.66 % 1.39 0.67 1.76 0.35 0.449 0.772
does caregiving cause financial difficulties? 0.88 % 1.29 0.64 2.42 0.32 0.468 0.768
do you feel trapped in your role as caregiver? 0.88 % 1.92 0.91 0.82 0.48 0.617 0.731
Mean inter-item-correlation=0.378 · Cronbach’s α=0.785

 

Component 2
Variable Missings Mean SD Skew Item Difficulty Item Discrimination α if deleted
do you feel you cope well as caregiver? 0.77 % 3.12 0.58 -0.12 0.78 0.258 0.414
do you feel supported by friends/neighbours? 0.77 % 2.16 1.04 0.32 0.54 0.255 0.415
do you feel caregiving worthwhile? 2.20 % 2.93 0.96 -0.45 0.73 0.355 0.188
Mean inter-item-correlation=0.226 · Cronbach’s α=0.449

 

  Component 1 Component 2
Component 1 α=0.785  
Component 2 -0.318
(<.001)
α=0.449
Computed correlation used pearson-method with listwise-deletion.

Adding further statistics

sjt.itemanalysis(mydf, factor.groups, show.shapiro = TRUE, show.kurtosis = TRUE)
Component 1
Variable Missings Mean SD Skew Kurtosis W(p) Item Difficulty Item Discrimination α if deleted
do you find caregiving too demanding? 0.66 % 2.02 0.72 0.65 0.71 0.80 (0.000) 0.51 0.549 0.75
does caregiving cause difficulties in your relationship with your friends? 0.66 % 1.63 0.87 1.3 0.84 0.72 (0.000) 0.41 0.562 0.746
does caregiving have negative effect on your physical health? 1.10 % 1.77 0.87 1.05 0.47 0.78 (0.000) 0.44 0.576 0.742
does caregiving cause difficulties in your relationship with your family? 0.66 % 1.39 0.67 1.76 2.84 0.62 (0.000) 0.35 0.449 0.772
does caregiving cause financial difficulties? 0.88 % 1.29 0.64 2.42 5.71 0.51 (0.000) 0.32 0.468 0.768
do you feel trapped in your role as caregiver? 0.88 % 1.92 0.91 0.82 -0.09 0.81 (0.000) 0.48 0.617 0.731
Mean inter-item-correlation=0.378 · Cronbach’s α=0.785

 

Component 2
Variable Missings Mean SD Skew Kurtosis W(p) Item Difficulty Item Discrimination α if deleted
do you feel you cope well as caregiver? 0.77 % 3.12 0.58 -0.12 0.25 0.75 (0.000) 0.78 0.258 0.414
do you feel supported by friends/neighbours? 0.77 % 2.16 1.04 0.32 -1.14 0.85 (0.000) 0.54 0.255 0.415
do you feel caregiving worthwhile? 2.20 % 2.93 0.96 -0.45 -0.84 0.85 (0.000) 0.73 0.355 0.188
Mean inter-item-correlation=0.226 · Cronbach’s α=0.449

 

  Component 1 Component 2
Component 1 α=0.785  
Component 2 -0.318
(<.001)
α=0.449
Computed correlation used pearson-method with listwise-deletion.