library(dplyr)
data(survey_data)
# Basic EFA with Varimax rotation
efa(survey_data,
political_orientation, environmental_concern, life_satisfaction,
trust_government, trust_media, trust_science)
# With Oblimin rotation (requires GPArotation package)
# \donttest{
if (requireNamespace("GPArotation", quietly = TRUE)) {
efa(survey_data,
political_orientation, environmental_concern, life_satisfaction,
trust_government, trust_media, trust_science,
rotation = "oblimin")
}
# }
# Maximum Likelihood extraction
efa(survey_data,
political_orientation, environmental_concern, life_satisfaction,
trust_government, trust_media, trust_science,
extraction = "ml")
# Promax rotation (oblique)
efa(survey_data,
political_orientation, environmental_concern, life_satisfaction,
trust_government, trust_media, trust_science,
rotation = "promax")
# Fix number of factors
efa(survey_data,
political_orientation, environmental_concern, life_satisfaction,
trust_government, trust_media, trust_science,
n_factors = 2)
# With survey weights
efa(survey_data,
political_orientation, environmental_concern, life_satisfaction,
trust_government, trust_media, trust_science,
weights = sampling_weight)
# Grouped by region
survey_data %>%
group_by(region) %>%
efa(political_orientation, environmental_concern, life_satisfaction,
trust_government, trust_media, trust_science)
# --- Three-layer output ---
result <- efa(survey_data, political_orientation, environmental_concern,
life_satisfaction, trust_government, trust_media, trust_science)
result # compact overview
summary(result) # full detailed output with all sections
summary(result, communalities = FALSE) # hide communalities table
Run the code above in your browser using DataLab