### Load data from psych package
data(bfi, package= 'psych');

### Specify scales
bfiScales <-
  list(Agreeableness     = paste0("Agreeableness_item_", 1:5),
       Conscientiousness = paste0("Conscientiousness_item_", 1:5),
       Extraversion      = paste0("Extraversion_item_", 1:5),
       Neuroticism       = paste0("Neuroticism_item_", 1:5),
       Openness          = paste0("Openness_item_", 1:5));

names(bfi) <- c(unlist(bfiScales),
                c('gender', 'education', 'age'));

### Only select first two and the first three items to
### keep it quick; just pass the full 'bfiScales'
### object to run for all five the full scales
ufs::CIM(bfi,
         scales=lapply(bfiScales, head, 3)[1:2],
         n.iter=10);
#> Loading required namespace: GPArotation

Conceptual Independence Matrix (CIM)

This table shows the scales (which should correspond to constructs) and items within each scale (which should correspond to aspects of that construct) between which this CIM shows the conceptual independence, as well as the abbreviations that are used:

scale abbreviatedScale variable abbreviatedVariable
Agreeableness Agrb Agreeableness_item_1 Agrb1
Agreeableness Agrb Agreeableness_item_2 Agrb2
Agreeableness Agrb Agreeableness_item_3 Agrb3
Conscientiousness Cnsc Conscientiousness_item_1 Cnsc1
Conscientiousness Cnsc Conscientiousness_item_2 Cnsc2
Conscientiousness Cnsc Conscientiousness_item_3 Cnsc3

Conceptual (in)dependence of Agreeableness and Conscientiousness

Factor loadings for Agreeableness and Conscientiousness

Factor loadings for Agreeableness and Conscientiousness

No messages, warnings, or errors encountered at all