Esercitazione — Gruppo B: CFA

Test per le organizzazioni - A.A. 2025/2026

Autore/Autrice

Margherita Calderan & Ottavia M. Epifania

Data di Pubblicazione

21 maggio 2026

# carico pacchetti e dati
library(MASS); library(psych); library(corrplot)
library(lavaan); library(semPlot); library(kableExtra)
load("data/uwesmix.rda")

1 Il questionario

Questionario sul benessere lavorativo, 9 item su scala 0–6 (maisempre).

Codice Testo dell’item
I1 Il mio lavoro è ricco di significato e di scopo
I2 Sono felice quando lavoro con grande intensità
I3 Al mio lavoro mi sento pieno/a di energia
I4 Quando mi sveglio la mattina ho voglia di andare al lavoro
I5 Sono entusiasta/o del mio lavoro
I6 Quando lavoro mi dimentico di tutto quello che succede intorno a me
I7 Il mio lavoro mi ispira
I8 Al lavoro mi sento forte e vigoroso/a
I9 Il tempo vola quando lavoro
Passo 0 — Prima di toccare il codice

Leggete tutti gli item e scrivete la vostra ipotesi strutturale:

  • Quante dimensioni identificate nel contenuto degli item?
  • Quali item appartengono a ciascuna? Motivate la scelta.
  • Le dimensioni sarebbero correlate?

Compilate il modello qui sotto prima di eseguire qualsiasi chunk.


2 Modello ipotizzato

# Sostituite Fattore nomi interpretabili
# e assegnate gli item sulla base del testo

modello_ipotesi1 <- '
  FattoreA =~ I? + I? + I? + ...
  ....
'

3 Stima e valutazione

cfa1 <- cfa(model   = modello_ipotesi1,
            data    = uwesmix,
            std.lv  = TRUE,
            ordered = TRUE)

3.1 Parametri

parTable(cfa1) |>
  dplyr::select(lhs, op, rhs, free, est) |>
  kable(caption = "Parametri stimati") |>
  kable_styling(bootstrap_options = c("striped","hover"),
                full_width = FALSE, font_size = 12)

3.2 Fit e path diagram

summary(cfa1, fit.measures = TRUE, standardized = TRUE)

Cosa potete dire di questo output?

Come sono gli indici di fit?

semPaths(cfa1, whatLabels = "std", edge.label.cex = 0.80,
         layout = "tree2", intercepts = FALSE)

Cosa potete dire di questo output?

Le saturazioni sono abbastanza alte?

Come sono gli indici di fit?

4 Confronto con modello alternativo

modello_ipotesi2 <- '
  FattoreA =~ I? + I? + I? + ...
  ....
'

cfa2 <- cfa(model = modello_ipotesi2, data = uwesmix,
              std.lv = TRUE, ordered = TRUE)

summary(cfa2, fit.measures = TRUE)
# Il modello più semplice va come primo argomento.
lavTestLRT(.. , ...)
Consiglio

Il test è significativo? Significatività statistica implica rilevanza pratica?


Per la presentazione
  1. Quale struttura avevate ipotizzato dal testo? Coincide con i dati?
  2. Il fit del vostro modello è accettabile?
  3. Quale modello funziona meglio ed ha più senso teoricamente?
  4. Le correlazioni tra fattori (se più di uno) sono alte o basse?