# Data import
dat <- read.csv("00_raw_data/data_help-seeking.csv") # Reads and stores original data
# Create data frame with only variables of interest
dat_vars <- dat |>
dplyr::select(starts_with("dr"))Developmental Relationships CFAs 2
Background
Data Preparation
Import Data
Rename Variables
# Rename the columns
dat_vars <-
dat_vars |>
rename(
dr01 = dr1_developmentalrelationships1_elements1,
dr02 = dr2_developmentalrelationships2_elements2,
dr03 = dr3_developmentalrelationships3_elements3,
dr04 = dr4_developmentalrelationships4_elements4,
dr05 = dr5_developmentalrelationships5_elements5,
dr06 = dr6_developmentalrelationships6_resources.aquired1,
dr07 = dr7_developmentalrelationships7_resources.acquired2,
dr08 = dr8_developmentalrelationships8_resources.acquired3)Rescale Variables
# Check data (Generates a stats summary for newly renamed variables)
varNames <- grep("dr", names(dat_vars), value = TRUE)
summary(dat_vars[,varNames])
# Loop the POM function over all columns of data
for (i in 1:length(varNames)) {
dat_vars[,varNames[i]] <- POM_fixed(x = dat_vars[,varNames[i]],
min_x = 0,
max_x = 100)*5
}CFAs
Model A
Factor Specification
## Developmental Relationships A (One Factor)
dev_relA <- '
# Define the latent factors.
dev_rel =~ dr01 +
dr02 +
dr03 +
dr04 +
dr05 +
dr06 +
dr07 +
dr08
'Measurement Model Results
| Model Fit Indices | |
| Measure | Value |
|---|---|
| χ² | 77.037 |
| df | 20.000 |
| p | 0.000 |
| CFI | 0.918 |
| TLI | 0.886 |
| RMSEA | 0.161 |
| SRMR | 0.062 |
| Factor Loadings | |||||||
| Coeff | SE | 95% CI | z | p | |||
|---|---|---|---|---|---|---|---|
| dev_rel | =~ | dr01 | 0.861 | 0.028 | 0.806,0.916 | 30.721 | 0 |
| dev_rel | =~ | dr02 | 0.890 | 0.023 | 0.845,0.936 | 38.192 | 0 |
| dev_rel | =~ | dr03 | 0.881 | 0.025 | 0.832,0.93 | 35.258 | 0 |
| dev_rel | =~ | dr04 | 0.735 | 0.047 | 0.643,0.827 | 15.659 | 0 |
| dev_rel | =~ | dr05 | 0.754 | 0.044 | 0.668,0.841 | 17.116 | 0 |
| dev_rel | =~ | dr06 | 0.794 | 0.039 | 0.718,0.869 | 20.592 | 0 |
| dev_rel | =~ | dr07 | 0.902 | 0.022 | 0.86,0.944 | 41.860 | 0 |
| dev_rel | =~ | dr08 | 0.429 | 0.081 | 0.269,0.588 | 5.269 | 0 |
Model D
Factor Specifications
## Developmental Relationships D (One Factor remove 'dr08')
dev_relD <- '
# Define the latent factors.
dev_rel =~ dr01 +
dr02 +
dr03 +
dr04 +
dr05 +
dr06 +
dr07
'Measurement Model Results
| Model Fit Indices | |
| Measure | Value |
|---|---|
| χ² | 23.531 |
| df | 14.000 |
| p | 0.052 |
| CFI | 0.985 |
| TLI | 0.977 |
| RMSEA | 0.079 |
| SRMR | 0.025 |
| Factor Loadings | |||||||
| Coeff | SE | 95% CI | z | p | |||
|---|---|---|---|---|---|---|---|
| dev_rel | =~ | dr01 | 0.868 | 0.027 | 0.816,0.921 | 32.476 | 0 |
| dev_rel | =~ | dr02 | 0.894 | 0.023 | 0.85,0.939 | 39.465 | 0 |
| dev_rel | =~ | dr03 | 0.882 | 0.025 | 0.833,0.931 | 35.635 | 0 |
| dev_rel | =~ | dr04 | 0.732 | 0.047 | 0.639,0.825 | 15.447 | 0 |
| dev_rel | =~ | dr05 | 0.746 | 0.045 | 0.657,0.834 | 16.481 | 0 |
| dev_rel | =~ | dr06 | 0.785 | 0.040 | 0.706,0.863 | 19.696 | 0 |
| dev_rel | =~ | dr07 | 0.901 | 0.022 | 0.859,0.944 | 41.453 | 0 |
Model F
Parceling
## Developmental Relationships PB (Balanced Parceling, removed dr08)
# Create parcels using the Balancing Technique
dat_vars$drPB1 <- rowMeans(dat_vars[c("dr07",
"dr04")],
na.rm = TRUE)
dat_vars$drPB2 <- rowMeans(dat_vars[c("dr02",
"dr05")],
na.rm = TRUE)
dat_vars$drPB3 <- rowMeans(dat_vars[c("dr03",
"dr01",
"dr06")],
na.rm = TRUE)Factor Specification
dev_relF <- '
# Define the latent factors.
dev_rel =~ drPB1 +
drPB2 +
drPB3
'Measurement Model Results
| Model Fit Indices | |
| Measure | Value |
|---|---|
| χ² | 0 |
| df | 0 |
| p | NA |
| CFI | 1 |
| TLI | 1 |
| RMSEA | 0 |
| SRMR | 0 |
| Factor Loadings | |||||||
| Coeff | SE | 95% CI | z | p | |||
|---|---|---|---|---|---|---|---|
| dev_rel | =~ | drPB1 | 0.904 | 0.023 | 0.859,0.949 | 39.579 | 0 |
| dev_rel | =~ | drPB2 | 0.898 | 0.024 | 0.852,0.944 | 38.116 | 0 |
| dev_rel | =~ | drPB3 | 0.938 | 0.019 | 0.9,0.975 | 48.957 | 0 |
Fit Table
Figure 1 – Fit Table
Model | χ2 | df | χ2∕df | p | CFI | TLI | RMSEA [90% CI] | SRMR | AIC | BIC |
|---|---|---|---|---|---|---|---|---|---|---|
Model A | 77.04 | 20 | 3.85 | < .001 | .92 | .89 | .16 [.12, .20] | .06 | 1,961.17 | 2,025.98 |
Model D | 23.53 | 14 | 1.68 | .052 | .98 | .98 | .08 [.00, .13] | .02 | 1,591.27 | 1,647.98 |
Model F | 0.00 | 0 | Inf | 1.0 | 1.0 | .00 [.00, .00] | .00 | 607.72 | 632.03 | |
Common guidelinesa | — | — | < 2 or 3 | > .05 | ≥ .95 | ≥ .95 | < .05 [.00, .08] | ≤ .08 | Smaller | Smaller |
aBased on Schreiber (2017), Table 3. | ||||||||||
Conclusion
A one factor and two factor model were tested and results from the two factor model do not support multiple dimensions due to only a small increase in overall fit over a one factor model, as well as a high covariance between both factors (0.939). Correlated residuals added to the one factor model in Developmental Relationships C, provided little improvement.
Item dr08 was removed in the Developmental Relationships D model due to distinctly poor loading in all models. This change improved fit to acceptable levels as shown in the fit table (Figure 1).
A balanced parceling technique was used for all 8 items as well as the 7-item model after removing dr08 in model Developmental Relationships PA and Developmental Relationsips PB, respectively. Again, the removal of dr08 resulted in improved parcel loadings.
Researchers intending to use the this measure are advised to use it as a unidimensional model and consider removing the 8th item, dr08.