38.5 Crescita quadratica

I termini quadratici descrivono il tasso medio di variazione della pendenza tra le diverse rilevazioni temporali. Nei modelli SEM, una tale caratteristica viene detta “crescita quadratica”. Consideriamo dunque un modello di crescita quadratica per la x.

quad_x_mod <-
  "
  iX =~ 1*x1 + 1*x2 + 1*x3 + 1*x4
  sX =~ 0*x1 + 1*x2 + 2*x3 + 3*x4
  qX =~ 0*x1 + 1*x2 + 4*x3 + 9*x4
"

quad_x_fit <-
  growth(
    model = quad_x_mod,
    estimator = "MLR",
    data = sim_growth_dat
  )

quad_x_fit_stats <-
  fitmeasures(
    quad_x_fit,
    selected_fit_stats
  )

round(quad_x_fit_stats, 2)
#>        chisq.scaled           df.scaled       pvalue.scaled          cfi.scaled 
#>                0.02                1.00                0.89                1.00 
#>        rmsea.scaled rmsea.pvalue.scaled                srmr 
#>                0.00                0.94                0.00

Qui abbiamo un problema interessante, poiché la x si adatta bene sia a un modello lineare sia a uno quadratico. Abbiamo però un caso di Heywood: la varianza stimata della variabile x4 è negativa.

lavInspect(quad_x_fit, "est")$theta
#>        x1     x2     x3     x4
#> x1  1.171                     
#> x2  0.000  0.718              
#> x3  0.000  0.000  1.213       
#> x4  0.000  0.000  0.000 -0.064

Questo è ovviamente un problema, in quanto il modello non sembra adeguato per i dati. È possibile introdurre dei vincoli sui parametri per poi valutare se, evitando il caso di Heywood, l’adattamento si mantiene a livelli adeguati. Tuttavia, per i fini di questo tutorial, ignoreremo il caso di Heywood e proseguiremo nell’analisi.

Quando si hanno due modelli nidificati (nel nostro caso, modelli lineari e quadratici), possiamo confrontare formalmente l’adattamento relativo dei due modelli con il test del rapporto di verosimiglianza (LRT). L’ipotesi nulla è che non vi sia alcuna differenza nella covarianza spiegata dai due modelli. Se la covarianza spiegata è equivalente, preferiamo il modello più semplice.

lavTestLRT(linear_x_fit, quad_x_fit)
#> 
#> Scaled Chi-Squared Difference Test (method = "satorra.bentler.2001")
#> 
#> lavaan NOTE:
#>     The "Chisq" column contains standard test statistics, not the
#>     robust test that should be reported per model. A robust difference
#>     test is a function of two standard (not robust) statistics.
#>  
#>              Df    AIC    BIC  Chisq Chisq diff Df diff Pr(>Chisq)
#> quad_x_fit    1 7570.4 7625.2 0.0200                              
#> linear_x_fit  5 7566.4 7604.3 4.0675     4.0026       4     0.4056

Qui, un p-value \(> 0.05\) (ovvero, nessuna evidenza di perdita di adattamento) ci dice che il modello lineare (ovvero, quello più semplice) è da preferire.

Esaminiamo la y.

quad_y_mod <-
  "
  iY =~ 1*y1 + 1*y2 + 1*y3 + 1*y4
  sY =~ 0*y1 + 1*y2 + 2*y3 + 3*y4
  qY =~ 0*y1 + 1*y2 + 4*y3 + 9*y4
"

quad_y_fit <-
  growth(
    model = quad_y_mod,
    estimator = "MLR",
    data = sim_growth_dat
  )

quad_y_fit_stats <-
  fitmeasures(
    quad_y_fit,
    selected_fit_stats
  )

quad_y_fit_stats
#>        chisq.scaled           df.scaled       pvalue.scaled          cfi.scaled 
#>               0.190               1.000               0.663               1.000 
#>        rmsea.scaled rmsea.pvalue.scaled                srmr 
#>               0.000               0.813               0.001

Gli indici di bontà di adattamento sono eccellenti.

lavTestLRT(linear_y_fit, quad_y_fit)
#> 
#> Scaled Chi-Squared Difference Test (method = "satorra.bentler.2001")
#> 
#> lavaan NOTE:
#>     The "Chisq" column contains standard test statistics, not the
#>     robust test that should be reported per model. A robust difference
#>     test is a function of two standard (not robust) statistics.
#>  
#>              Df     AIC     BIC    Chisq Chisq diff Df diff Pr(>Chisq)    
#> quad_y_fit    1  9301.7  9356.5   0.1901                                  
#> linear_y_fit  5 10194.9 10232.9 901.4270     829.59       4  < 2.2e-16 ***
#> ---
#> Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Il test del rapporto di verosimiglianza ci dice che, per la y, il modello quadratico è sicuramente da preferire al modello lineare.