Random Parceling mit R
Zufällige Parcel-Allokation für SEM oder CFA mit lavaan

Arndt Regorz, Dipl. Kfm. & MSc. Psychologie, 06.12.2023

Dieses Video-Tutorial zeigt, wie Sie mit der parcelAllocation() Funktion ein zufälliges Item-Parceling für SEM oder CFA mit lavaan durchführen können.

Video



(Hinweis: Mit Anklicken des Videos wird ein Angebot des Anbieters YouTube genutzt.)


library(lavaan) library(semTools)

head(data_parcel_allocation)

model_i <-'
DepV =~ DV1 + DV2 + DV3 + DV4 + DV5 + DV6
IndV =~ IV1 + IV2 + IV3 + IV4 + IV5 + IV6

DepV ~ IndV'

model_p <-'
DepV =~ DV_p1 + DV_p2 + DV_p3
IndV =~ IV_p1 + IV_p2 + IV_p3

DepV ~ IndV'

parcelAllocation(model_p, data = data_parcel_allocation, nAlloc = 100,
parcel.names = c("DV_p1", "DV_p2", "DV_p3", "IV_p1", "IV_p2", "IV_p3"),
item.syntax = model_i,
fun = "sem")

# Zusätzliche Parameter

# alpha = 0.05
# andere lavaan Schätzparameter: se = "robust"

# Parcels extrahieren ohne die SEM-Schätzung durchzuführen
erg <- parcelAllocation(model_p, data = data_parcel_allocation, nAlloc = 3,
parcel.names = c("DV_p1", "DV_p2", "DV_p3", "IV_p1", "IV_p2", "IV_p3"),
item.syntax = model_i,
fun = "sem",
do.fit = FALSE)
erg[1] # Erste Parcel-Zuordnung

# Details des Schätzprozesses pro Parcel extrahieren
details <- parcelAllocation(model_p, data = data_parcel_allocation, nAlloc = 3,
parcel.names = c("DV_p1", "DV_p2", "DV_p3", "IV_p1", "IV_p2", "IV_p3"),
item.syntax = model_i,
fun = "sem",
return.fit = TRUE)

str(details)

# Schätzungen für drei verschiedene Parcel-Zuordnungen
details[1]
details$Model@ParTableList[1]
details$Model@ParTableList[2]
details$Model@ParTableList[3]

# Fit-Indizes für drei verschiedene Parcel-Zuordnungen
details[3]
details$Model@funList[1]
details$Model@funList[2]
details$Model@funList[3]