Overview of the measure development process

Factoranalyse in R

Jennifer Brussow

Psychometrician

Development process

  1. Develop items for your measure

  2. Collect pilot data from a representative sample

  3. Check out what that dataset looks like

  4. Consider whether you want to use EFA, CFA, or both

  5. If both, split your sample into random halves

  6. Compare the two samples to make sure they are similar

Factoranalyse in R

Development process

  1. Develop items for your measure

  2. Collect pilot data from a representative sample

  3. Check out what that dataset looks like

Factoranalyse in R

Inspecting your dataset

library(psych)
describe(gcbs)
    vars    n mean   sd median trimmed  mad min max range  skew ...
Q1     1 2495 3.47 1.46      4    3.59 1.48   0   5     5 -0.55 ...
Q2     2 2495 2.96 1.49      3    2.96 1.48   0   5     5 -0.01 ...
Q3     3 2495 2.05 1.39      1    1.82 0.00   0   5     5  0.98 ...
Q4     4 2495 2.64 1.45      2    2.55 1.48   0   5     5  0.26 ...
Q5     5 2495 3.25 1.47      4    3.32 1.48   0   5     5 -0.35 ...
...
Q11   11 2495 3.27 1.40      4    3.34 1.48   0   5     5 -0.35 ...
Q12   12 2495 2.64 1.50      2    2.56 1.48   0   5     5  0.29 ...
Q13   13 2495 2.10 1.38      1    1.89 0.00   0   5     5  0.89 ...
Q14   14 2495 2.96 1.49      3    2.95 1.48   0   5     5 -0.02 ...
Q15   15 2495 4.23 1.10      5    4.47 0.00   0   5     5 -1.56 ...
Factoranalyse in R

Development process

  1. Develop items for your measure

  2. Collect pilot data from a representative sample

  3. Check out what that dataset looks like

  4. Consider whether you want to use an exploratory analysis (EFA), a confirmatory analysis (CFA), or both

  5. If both, split your sample into random halves

Factoranalyse in R

Splitting the dataset

 

N <- nrow(gcbs)
indices <- seq(1, N)
indices_EFA <- sample(indices, floor((0.5 * N)))
indices_CFA <- indices[!(indices %in% indices_EFA)]
gcbs_EFA <- gcbs[indices_EFA, ]
gcbs_CFA <- gcbs[indices_CFA, ]
Factoranalyse in R

Development process

  1. Develop items for your measure

  2. Collect pilot data from a representative sample

  3. Check out what that dataset looks like

  4. Consider whether you want to use EFA, CFA, or both

  5. If both, split your sample into random halves

  6. Compare the two samples to make sure they are similar

Factoranalyse in R

Inspecting the halves

group_var <- vector("numeric", nrow(gcbs))
group_var[indices_EFA] <- 1
group_var[indices_CFA] <- 2
group_var
   [1] 2 1 2 2 1 2 1 1 2 2 2 1 2 2 1 1 2 1 1 1 1 2 1 1 2 1 1 1 2 2
  [31] 2 2 2 1 2 2 2 1 2 2 2 1 1 1 2 2 2 2 1 2 2 1 1 2 2 2 2 2 2 2
  [61] 2 1 2 1 2 2 1 2 1 2 2 2 1 2 1 2 1 1 2 2 1 2 1 2 1 1 1 2 2 2
  [91] 2 2 2 1 2 2 2 2 2 2 2 2 1 2 2 2 1 2 2 2 2 1 1 1 2 2 1 1 2 2
 [121] 2 1 2 2 1 2 2 1 2 2 2 2 1 2 1 1 1 2 2 1 1 1 2 1 1 1 1 2 2 2
 [151] 1 1 1 1 2 2 2 2 2 1 2 1 1 2 1 1 2 1 2 1 2 1 1 1 2 1 1 1 1 2
 [181] 2 1 1 2 2 2 1 1 1 1 2 2 2 2 2 1 1 1 1 2 2 1 1 1 2 1 2 1 2 2
Factoranalyse in R

Inspecting the halves

gcbs_grouped <- cbind(gcbs, group_var)
describeBy(gcbs_grouped, group = group_var)
statsBy(gcbs_grouped, group = "group_var")
Factoranalyse in R

Let's practice!

Factoranalyse in R

Preparing Video For Download...