Online supplementary materials

``Behavioral and neural responses to social rejection: Individual differences in developmental trajectories across childhood and adolescence’’ by Mulder, Dobbelaar, and Achterberg (2024)

Author
Affiliation

Utrecht University

Introduction

This document contains the online supplementary materials to Mulder, Dobbelaar, and Achterberg (2024). It serves as a methodological and statistical rationale, and highlights the R code that was used to fit the models and explore the results. Questions regarding the analyses in the paper can be addressed to the first author, Jeroen D. Mulder.

First, the study’s research aims are briefly summarized. Second, the data used in the study are introduced, in which the focus lies on those characteristics of the data that require due consideration in the subsequent statistical analysis. Third, the statistical models are introduced in detail. Fourth, the models are fitted to the data, and model convergence and fit are assessed. Finally, numerical results are interpreted and visualized. The complete R code (i.e., including code that was used for data manipulation and the creation of visualizations) can be found on GitHub.

Research aims

This study has three main aims:

  1. To describe developmental trajectories of behavioral (aggressive) and brain responses of negative social feedback throughout childhood and emerging adolescence,
  2. to estimate the associations between development in behavioral aggression regulation and development in neural responses to social rejection, and
  3. to estimate the relationship between development in social emotion regulation and social well-being in adolescence.

The data

The data in this study come from the experimental longitudinal twin sample from the Leiden Consortium Individual Development (L-CID). Participants in the sample were invited to participate in fMRI sessions at three measurement occasions with approximately two-year intervals, termed wave 1, 3, and 5, respectively. During the fMRI sessions, the social network aggression task (SNAT) was used to measure behavioral (aggressive) responses to social rejection, and neural responses to social rejection. A sixth wave of data was collected in which participants’ social well-being was measured. More detailed information about the sample used in this study is given in this study’s preregistration by Achterberg et al. (2022), and in Dobbelaar et al. (2022). For details on the Leiden Consortium Individual Development project, the reader is referred to Crone et al. (2020).

Behavioural responses

Aggressive behavioral responses to social rejection were measured during each fMRI session using the social network aggression task (SNAT). In short, during the SNAT, a participant would receive feedback from multiple peers on their own personal profile (which they created themselves specifically for the study). The feedback was either positive, neutral, or negative. Participants were told that they could press a button to send a loud noise blast to the peers in response to the feedback. The longer the button press, the longer, and louder, the noise blast would be. The length of the button press (in ms) was recorded, and taken as a proxy for behavioral aggressive response (maximum length of the button press was 3500 ms). In total, there were 20 neutral trials and 20 negative trials per fMRI session, resulting in three sets of 40 repeated behavioral responses for individuals who completed measurements at all three waves.

Several characteristics of the behavioural response measurements warrant attention. First, the data have a hierarchical structure, with repeated feedback trials (level 1) nested in measurement waves (level 2), which are nested in individuals (level 3), which are nested in families (level 4). Second, there are individually-varying times of observation for the fMRI sessions (see the reported age range per measurement wave in Table 1 of the main paper). Hence, at any given wave, participants might have been at a different stage in their developmental process. Third, Figure 1 shows that a significant amount of behavioral response measurements have been censored from above, resulting from a time limit on the length of the button press.

Figure 1: Noise blast duration (seconds) per measurement occasion.

Fourth, there is a fair amount of missing data. For the behavioral response measurements, this exists almost entirely of dropout. The noise columns in Figure 2 display the different missing data patterns across time for these measurements.

Figure 2: Missing data patterns. The behavioural measurements are denoted by noise. DLPFC, INS, and MPFC are the neural responses in the dorsolateral prefrontal cortex, anterior insula, and medial prefrontal cortext, respectively.

Neural responses

In addition to behavioral responses after social feedback, neural responses after social feedback were also measured using fMRI scans during the SNAT, specifically in the anterior insula AI, the medial prefrontal cortex MPFC, and the dorsolateral prefrontal corect DLPFC. Like the behavioral response measure, the neural responses also have a hierarchical structure. However, preprocessing of the fMRI data resulted in measurements that are contrasts between average brain response for neutral feedback versus average brain response for negative feedback. Hence, the neural measurements have a three level structure compared to the behavioral measurements (i.e., there is no neural data at the trial level, level 1). Furthermore, there is missing data in the neural measurements, as visualized in Figure 2. This is a combination of dropout and measurement error (e.g., when children move too much to get an accurate fMRI scan; Table 1 in the main paper contains an overview of reasons for exclusion frequencies of fMRI measurements per wave). Finally, as the behavioral and neural measurements were taken simultaneously, there are individually-varying times of observation to also need to be taken into account for these measurements.

The neural responses (i.e., contrast) across time are plotted in the spaghetti plots below. These plots are useful as an initial exploration of individual development in brain response. The thick black line represent the average linear development in brain response, and colored lines represent individual brain responses across time. From the plot it becomes clear that there are many differences in how individuals develop over time, and that on average development appears to be only minor.

Figure 3: Observed neural responses across age.

Social well-being

At wave 6, a social well-being questionnaire was filled in, consisting of 5 subscales: Ten items from the Adolescent Wellbeing Paradigm (AWP), ten items from the World Health Organization Quality of Life Scale (WHOQoL), and three subscales (each five items) from the Harter’s Self-Perception Profile for Adolescents (SPPA), specifically the subscales Social Competence (SC), Close Friendships (CF) and Global Self-worth (GS). All items were answered on a four-point Likert scale, with low scores indicating low social well-being and high scores indicating high social well-being. Instructions in each of the subscale manuals were followed for the handling of missing data and scoring of subscale scores. As such simple mean scores were computed per subscale and used for further statistical analyses.

Statistical models

To explore Aim 1, the behavioral and neural responses were analyzed using Bayesian multilevel growth curve models, and specified using the R package brms (Bürkner 2017) in R version 4.2.2 (R Core Team 2019). The Bayesian estimation framework was chosen because it can easily accommodate censoring by integrating out censored values (Gelman et al. 2013). Moreover, missing data can be imputed as part of the model fitting process under the assumption of missing at random (MAR) (Bürkner 2017). The multilevel framework was chosen because it treats the time of observation as data (rather than as a parameter, as in a latent growth curve model), and can therefore more easily handle individually-varying times of observations (Mehta and West 2000). For Aims 2 and 3, a single structural equation model was specified in which social well-being was predicted from the estimated individual growth components extracted from the Bayesian multilevel growth curve model.

Intercept-only models

To assess the proportion of observed variance that can be explained by each of the levels (expressed in terms of an intraclass correlation), intercept-only models were run first. The tabs below contain R code for estimating each of these intercept-only models using brms. The results are displayed in Table 2 of the main paper.

m_INS_ICC <- brm(
  formula = INS ~ 1 + (1 | fam/id),
  data = df_brain,
  family = gaussian(),
  warmup = 2000,
  iter = 4000,
  chains = 2,
  init = "random", 
  cores = 2,
  thin = 4,
  seed = 20221005
)

ICC_id <- "sd_fam:id__Intercept^2 / (sd_fam__Intercept^2 + sd_fam:id__Intercept^2 + sigma^2) > 0"
ICC_fam <- "sd_fam__Intercept^2 / (sd_fam__Intercept^2 + sd_fam:id__Intercept^2 + sigma^2) > 0"

hypothesis(m_INS_ICC, hypothesis = ICC_id, class = NULL, robust = FALSE)
hypothesis(m_INS_ICC, hypothesis = ICC_fam, class = NULL, robust = FALSE)
m_MPFC_ICC <- brm(
  formula = MPFC ~ 1 + (1 | fam/id),
  data = df_brain,
  family = gaussian(),
  warmup = 2000,
  iter = 4000,
  chains = 2,
  init = "random", 
  cores = 2,
  thin = 4,
  seed = 20221005,
  control = list(adapt_delta = 0.9)
)

hypothesis(m_MPFC_ICC, hypothesis = ICC_id, class = NULL, robust = FALSE)
hypothesis(m_MPFC_ICC, hypothesis = ICC_fam, class = NULL, robust = FALSE)
m_DLPFC_ICC <- brm(
  formula = DLPFC ~ 1 + (1 | fam/id),
  data = df_brain,
  family = gaussian(),
  warmup = 2000,
  iter = 4000,
  chains = 2,
  init = "random", 
  cores = 2,
  thin = 4,
  seed = 20221005,
  control = list(adapt_delta = 0.9)
)

hypothesis(m_DLPFC_ICC, hypothesis = ICC_id, class = NULL, robust = FALSE)
hypothesis(m_DLPFC_ICC, hypothesis = ICC_fam, class = NULL, robust = FALSE)
m_noise_gaus_ICC <- brm(
  formula = noise | cens(censored) ~ 1 + (1 | fam/id/wave),
  data = df_noise,
  family = gaussian(),
  warmup = 2000,
  iter = 6000,
  chains = 2,
  init = "random",
  cores = 2,
  thin = 6,
  seed = 20221005,
  control = list(adapt_delta = 0.9)
)

ICC_noise_fam <- "sd_fam__Intercept^2 / (sd_fam__Intercept^2 + sd_fam:id__Intercept^2 + sd_fam:id:wave__Intercept^2 + sigma^2) > 0"
ICC_noise_id <- "sd_fam:id__Intercept^2 / (sd_fam__Intercept^2 + sd_fam:id__Intercept^2 + sd_fam:id:wave__Intercept^2 + sigma^2) > 0"
ICC_noise_wave <- "sd_fam:id:wave__Intercept^2 / (sd_fam__Intercept^2 + sd_fam:id__Intercept^2 + sd_fam:id:wave__Intercept^2 + sigma^2) > 0"

hypothesis(m_noise_gaus_ICC, hypothesis = ICC_noise_fam, class = NULL, robust = TRUE)
hypothesis(m_noise_gaus_ICC, hypothesis = ICC_noise_id, class = NULL, robust = TRUE)
hypothesis(m_noise_gaus_ICC, hypothesis = ICC_noise_wave, class = NULL, robust = TRUE)

Bayesian multilevel growth curve model (Aim 1)

The growth curve models were build up as follows. Let \(noise_{fiwt}\) be the noise blast duration (in seconds) for an individual \(i\) from family \(f\), at measurement wave \(w\) and trial \(t\). At level 1, the model is given by \[ noise_{fiwt} = \beta_{0fiw} + \beta_{1fiw} \; x_{fiwt} + e_{fiwt}. \] \(x_{fiwt}\) is the condition (type of feedback, with 0 = neutral, negative = 1), \(\beta_{0fiw}\) is a random mean representing noise blast duration for neutral feedback for individual \(i\) from family \(f\) at wave \(w\), \(\beta_{1fiw}\) is a random slope representing the difference between the neutral and negative condition for individual \(i\) from family \(f\) at wave \(w\), and \(e_{fiwt}\) represents the residual.

At level 2, the model is specified as \[\beta_{0fiw} = \gamma_{00fi} + u_{0fiw},\] \[\beta_{1fiw} = \gamma_{10fi} + \gamma_{11fi} \; a_{fiw} + \gamma_{12fi} \; a_{fiw}^{2} + u_{1fiw},\] where \(\gamma_{00fi}\) is a random intercept representing noise blast for the neutral condition, and \(u_{0fiw}\) is the random effect with variance \(Var[u_{0fiw}]\), representing a family-, individual-, and wave-specific deviation from \(\gamma_{00fi}\). To describe development in response over time, \(\beta_{1fiw}\) is predicted from age \(a_{fiw}\), and age-squared \(a^{2}_{fiw}\). The predictor is grand-mean centered at 0 to prevent issues with multicollinearity, such that \(a_{fiw} = 0\) now represents an age of approximately 9 years and 9 months. The coefficients \(\gamma_{10fi}\), \(\gamma_{11fi}\), and \(\gamma_{12fi}\) are the growth components of interest, describing the mean response, linear development in response, and quadratic development in response of individual \(i\) from family \(f\) at 9 years and 9 months of age, respectively. \(u_{1fiw}\) is a random component with variance \(Var[u_{1fiw}]\), representing a family-, individual-, and wave-specific deviations from the expected \(\beta_{1fiw}\).

At level 3, the model is specified as \[\gamma_{00fi} = \delta_{0} + v_{0fi},\] \[\gamma_{10fi} = \delta_{1f} + v_{1fi},\] \[\gamma_{11fi} = \delta_{2f} + v_{2fi},\] \[\gamma_{12fi} = \delta_{3f} + v_{3fi},\] where \(\delta_{0f}\) represents the mean noise blast of family \(f\) for the neutral condition, and \(v_{0fi}\) represents the individual-specific deviation from \(\delta_{00}\) with variance \(Var[v_{0fi}]\). \(\delta_{1f}\), \(\delta_{2f}\), and \(\delta_{3f}\) represent the family means of the growth components described on level 2, and \(v_{1fi}\), \(v_{2fi}\), and \(v_{3fi}\) represent individual-specific (i.e., within-family) deviations from these means with variances \(Var[v_{1fi}]\), \(Var[v_{2fi}]\), and \(Var[v_{3fi}]\).

Finally, at level 4, the model is given by \[\delta_{0f} = \theta_{0} + z_{0f},\] \[\delta_{1f} = \theta_{1} + z_{1f},\] \[\delta_{2f} = \theta_{2} + z_{2f},\] \[\delta_{3f} = \theta_{3} + z_{3f}.\] where \(\theta_{0}\) is the grand mean (across families, individuals, waves, and trials) of noise blast for the neutral condition. \(\theta_{1}\), \(\theta_{2}\), and \(\theta_{3}\) are the grand means of the growth components. \(z_{1f}\), \(z_{2f}\), and \(z_{3f}\) are family-specific differences herein, with variances \(Var[z_{1f}]\), \(Var[z_{2f}]\), and \(Var[z_{3f}]\). In total, 15 parameters are estimated in this model, namely 4 fixed effects and 4 random effect variances at level 4, 4 random effect variances at level 3, 2 random effect variances at level 2, and 1 residual variance at level 1.

Missing data were imputed as part of model fitting. Due to the setup of the study (with a planned two-year interval between subsequent measurement waves), missing values for age \(a^{mis}_{fiw}\) could be predicted from the individual’s age at the first measurement wave ageW1c and the wave number. Missing values for age-squared \(a^{2, mis}_{fiw}\) could then be created simply by squaring \(a^{mis}_{fiw}\). This resulted in the exclusion of a single family (two individuals) from the sample, who had missing values at their first measurement wave. For the outcome, missing values were predicted from feedback condition \(X\), age \(A\), and age-squared \(A^{2}\). For this procedure to work well, missing at random (MAR) has to be assumed, implying that the degree of missingness only depends on the observed data. While, the plausibility of this assumption can be questioned, it is a weaker assumption than missing completely at random (MCAR), which would be assumed when the missing values were simply deleted from the data (Gelman et al. 2013).

For the brain data, mean response is already available from the preprocessing of the MRI data. Therefore, in the model above, the trial level is removed, as well as the equation for \(\beta_{0fiw}\) at level 2. The interpretation of the remaining parameters, and the procedure used to impute for missing values, are equivalent.

R code for model fitting is printed below, for each outcome in a separate tab. brms allows for models to be specified using lme4-like syntax. The mi() wrapper around variables denotes that missing values are imputed. For each outcome, iter = 4000 values were sampled from the posterior distribution, of which the first warmup = 2000 were discarded. chains = 2 chains were used, and convergence was assessed using the split-\(\hat{R}\) value (Gelman et al. 2013). Only every thin = 4\(^{th}\) simulation draw was kept to keep model size manageable, resulting in a total of 1000 posterior simulation draws. Stan’s default uninformative priors were used because no independent prior information was available on the development of behavioral and brain emotion regulation as measured using the SNAT.

Noise blast measurements have a lower limit of 0, and are restricted from above at 3500 ms. In theory, this information could be included in the model in the form of a bounded prior on the range of values that the fixed effects \(\theta\) could take on. However, the brms manual states that such a procedure is rarely useful, and hence default uninformative priors were used. The cens() function was used to denote which values were censored. Two models where fitted. The first assumed that the outcome was Gaussian distributed. Second, given the complexity of this 4-level model, and the restricted range of noise, a model assuming a t-distributed outcome was fitted as well to allow for more robust inference (Gelman et al. 2013).

# Gaussian response distribution
f_noise_gaus <- 
  bf(noise | cens(censored) + mi() ~ 1 + con + con:mi(agec) + con:mi(agec2) + 
       (1 + con | fam/id/wave) + (-1 + con:mi(agec) + con:mi(agec2) | fam/id)) + 
  gaussian() + 
  bf(agec | mi() ~ -1 + ageW1c + wave0) +
  bf(agec2 | mi() ~ -1 + ageW1c2 + ageW1c_wave0 + wave02)

m_noise_gaus <- brm(f_noise_gaus,
  data = df_noise,
  warmup = 2000,
  iter = 4000,
  chains = 2,
  init = "random",
  cores = 2,
  thin = 4,
  seed = 20221005,
  control = list(adapt_delta = 0.85)
)

# Student-t response distribution
f_noise_stud <- 
  bf(noise | cens(censored) + mi() ~ 1 + con + con:mi(agec) + con:mi(agec2) + 
       (1 + con | fam/id/wave) + (-1 + con:mi(agec) + con:mi(agec2) | fam/id)) + 
  student() + 
  bf(agec | mi() ~ -1 + ageW1c + wave0) +
  bf(agec2 | mi() ~ -1 + ageW1c2 + ageW1c_wave0 + wave02)

m_noise_stud <- brm(f_noise_stud,
  data = df_noise,
  warmup = 2000,
  iter = 4000,
  chains = 2,
  init = "random",
  cores = 2,
  thin = 4,
  seed = 20221005,
  control = list(adapt_delta = 0.88)
)
f_DLPFC_3L <- 
  bf(DLPFC | mi() ~ 1 + mi(agec) + mi(agec2) + (1 + mi(agec) + mi(agec2) | fam/id)) + 
  gaussian() +
  bf(agec | mi() ~ -1 + ageW1c + wave0) +
  bf(agec2 | mi() ~ -1 + ageW1c2 + ageW1c_wave0 + wave02)

m_DLPFC_3L <- brm(f_DLPFC_3L,
  data = df_brain,
  warmup = 2000,
  iter = 4000,
  chains = 2,
  init = "random", 
  cores = 2,
  thin = 4,
  seed = 20221005
)

The term AI in the R code below actually refers to the anterior insula AI.

f_INS_3L <- 
  bf(INS | mi() ~ 1 + mi(agec) + mi(agec2) + (1 + mi(agec) + mi(agec2) | fam/id)) + 
  gaussian() +
  bf(agec | mi() ~ -1 + ageW1c + wave0) +
  bf(agec2 | mi() ~ -1 + ageW1c2 + ageW1c_wave0 + wave02)

m_INS_3L <- brm(f_INS_3L,
  data = df_brain,
  warmup = 2000,
  iter = 4000,
  chains = 2,
  init = "random", 
  cores = 2,
  thin = 4,
  seed = 20221005
)
f_MPFC_3L <- 
  bf(MPFC | mi() ~ 1 + mi(agec) + mi(agec2) + (1 + mi(agec) + mi(agec2) | fam/id)) + 
  gaussian() + 
  bf(agec | mi() ~ -1 + ageW1c + wave0) +
  bf(agec2 | mi() ~ -1 + ageW1c2 + ageW1c_wave0 + wave02)

m_MPFC_3L <- brm(f_MPFC_3L,
  data = df_brain,
  warmup = 2000,
  iter = 4000,
  chains = 2,
  init = "random", 
  cores = 2,
  thin = 4,
  seed = 20221005
)

Deviations from preregistration

The preregistration by Achterberg et al. (2022) stated that correlations between the random coefficients at each level would be estimated. However, due to low level-specific sample sizes (i.e., three measurements per individual at level 2, two individuals per family at level 3), this was not statistically feasible. Therefore, these coefficients were excluded from the model.

Structural equation model (Aims 2 and 3)

The analyses described here are related to both Aims 2 and 3. For Aim 2, associations between the growth components of the four behavioral and brain outcomes were investigated. For Aim 3, estimated individual-level growth components were used to predict social well-being at wave 6. In this section, I first discus how growth components for each individual are extracted from the growth curve models. Second, a one-factor confirmatory factor analysis model is introduced to investigate the dimensionality of the five social well-being subscales. Third, a structural equation model is introduced to estimate correlations between the growth components, and to predict social well-being during adolescence.

Creating individual-level growth components

The results from the fitted Bayesian multilevel growth curve models are based on 1000 draws of the poster distribution for each parameter, which includes both fixed effects and random effects. Therefore, at each iteration, the sampled fixed effects and individually drawn random effects can be extracted from the model and used compute personalized growth components. Specifically, for an individual \(i\) from family \(f\), and given a specific iteration, the growth components are computed as \[\gamma_{10fi} = \theta_{1} + z_{1f} + v_{1if},\] \[\gamma_{11fi} = \theta_{2} + z_{2f} + v_{2if},\] \[\gamma_{12fi} = \theta_{3} + z_{3f} + v_{3if}.\] Computing these three parameters, for each of the four outcomes, and for each iteration, results in 1000 data sets of \(4 \times 3 = 12\) personalized growth components. These serve as input for predicting social well-being. R code for these computations is too long to display here, but is available at GitHub.

Dimensionality of social well-being

Social well-being data consists of 35 items, belonging to one of five subscales. The data were preprocessed by computing factor scores for each subscale by taking the mean of the respective items (as instructed in the subscale manuals). Using the R package lavaan (version 0.6.12), a one-factor confirmatory factor analysis model was fitted with the subscales scores as indicators (Rosseel 2012).

# Confirmatory factor analysis social well-being using lavaan.
m_cfa_well <- '
  # 1-factor model for social well-being
  well =~ 1*co + who + sc + cf + gs
'

Multivariate regression/prediction model

Structural equation modeling was used to estimate the relations between the development behavioral and brain responses, as well as later social well-being. A multiple regression model was specified with the social well-being subscales as the outcome, and the growth components for each outcome as predictors. The predictors are allowed to covary freely with each other to investigate the associations between development in response of behavioral and brain outcomes. The estimated regression coefficients then represent the relationship between development in social emotion regulation and social well-being in adolescence. lavaan model syntax can be found below.

m_regression <- '
  # Regression
  co ~ gamma10_INS + gamma11_INS + gamma12_INS + gamma10_DLPFC + gamma11_DLPFC + gamma12_DLPFC + gamma10_MPFC + gamma11_MPFC + gamma12_MPFC + gamma10_noise + gamma11_noise + gamma12_noise
  who ~ gamma10_INS + gamma11_INS + gamma12_INS + gamma10_DLPFC + gamma11_DLPFC + gamma12_DLPFC + gamma10_MPFC + gamma11_MPFC + gamma12_MPFC + gamma10_noise + gamma11_noise + gamma12_noise
  sc ~ gamma10_INS + gamma11_INS + gamma12_INS + gamma10_DLPFC + gamma11_DLPFC + gamma12_DLPFC + gamma10_MPFC + gamma11_MPFC + gamma12_MPFC + gamma10_noise + gamma11_noise + gamma12_noise
  cf ~ gamma10_INS + gamma11_INS + gamma12_INS + gamma10_DLPFC + gamma11_DLPFC + gamma12_DLPFC + gamma10_MPFC + gamma11_MPFC + gamma12_MPFC + gamma10_noise + gamma11_noise + gamma12_noise
  gs ~ gamma10_INS + gamma11_INS + gamma12_INS + gamma10_DLPFC + gamma11_DLPFC + gamma12_DLPFC + gamma10_MPFC + gamma11_MPFC + gamma12_MPFC + gamma10_noise + gamma11_noise + gamma12_noise
  
  # Variances 
  gamma10_INS ~~ gamma10_INS
  gamma11_INS ~~ gamma11_INS
  gamma12_INS ~~ gamma12_INS
  
  gamma10_DLPFC ~~ gamma10_DLPFC
  gamma11_DLPFC ~~ gamma11_DLPFC
  gamma12_DLPFC ~~ gamma12_DLPFC
  
  gamma10_MPFC ~~ gamma10_MPFC
  gamma11_MPFC ~~ gamma11_MPFC
  gamma12_MPFC ~~ gamma12_MPFC
  
  gamma10_noise ~~ gamma10_noise
  gamma11_noise ~~ gamma11_noise
  gamma12_noise ~~ gamma12_noise
  
  # Residual variances
  co ~~ co 
  who ~~ who 
  sc ~~ sc
  cf ~~ cf
  gs ~~ gs
  
  # Covariances
  gamma10_INS ~~ gamma11_INS + gamma12_INS + gamma10_DLPFC + gamma11_DLPFC + gamma12_DLPFC + gamma10_MPFC + gamma11_MPFC + gamma12_MPFC + gamma10_noise + gamma11_noise + gamma12_noise 
  gamma11_INS ~~ gamma12_INS + gamma10_DLPFC + gamma11_DLPFC + gamma12_DLPFC + gamma10_MPFC + gamma11_MPFC + gamma12_MPFC + gamma10_noise + gamma11_noise + gamma12_noise 
  gamma12_INS ~~ gamma10_DLPFC + gamma11_DLPFC + gamma12_DLPFC + gamma10_MPFC + gamma11_MPFC + gamma12_MPFC + gamma10_noise + gamma11_noise + gamma12_noise 
  
  gamma10_DLPFC ~~ gamma11_DLPFC + gamma12_DLPFC + gamma10_MPFC + gamma11_MPFC + gamma12_MPFC + gamma10_noise + gamma11_noise + gamma12_noise 
  gamma11_DLPFC ~~ gamma12_DLPFC + gamma10_MPFC + gamma11_MPFC + gamma12_MPFC + gamma10_noise + gamma11_noise + gamma12_noise
  gamma12_DLPFC ~~ gamma10_MPFC + gamma11_MPFC + gamma12_MPFC + gamma10_noise + gamma11_noise + gamma12_noise
  
  gamma10_MPFC ~~ gamma11_MPFC + gamma12_MPFC + gamma10_noise + gamma11_noise + gamma12_noise 
  gamma11_MPFC ~~ gamma12_MPFC + gamma10_noise + gamma11_noise + gamma12_noise
  gamma12_MPFC ~~ gamma10_noise + gamma11_noise + gamma12_noise
  
  gamma10_noise ~~ gamma11_noise + gamma12_noise
  gamma11_noise ~~ gamma12_noise
  
  # Residual covariances
  co ~~ who + sc + cf + gs
  who ~~ sc + cf + gs
  sc ~~ cf + gs
  cf ~~ gs
' 

To take the uncertainty of the individual growth component estimates from the Bayesian multilevel growth curve models into account, the SEM model was fitted to each of the 1000 data sets using the R package semTools (Jorgensen, Pornprasertmanit, and Schoemann 2022). Point and standard error estimates were pooled according to rules by Rubin (1987).

Results

Development of behavioral and brain responses (Aim 1)

In this section, model fit is evaluated using a posterior predictive check, and the results are presented. The results are organized below per outcome separately.

The posterior predictive checks (ppc) of two models for noise are shown in Figure 4: The left panel is a ppc-plot from a model assuming a Gaussian-distributed outcome; the right panel is a ppc-plot from a model assuming a Student t-distributed outcome. The comparison shows that using a t-distribution, the model is better able to capture the kurtosis in the observed density, and that the modes of the posterior draws better align with the peak of the observed data. Therefore, the model assuming a t-distributed outcome is selected for further interpretation.

Figure 4: Posterior predictive checks (ppc) for the behavioural (aggresive) response (noise). The model underlying the left plot assumes a normally-distributed outcome; the model underlying the right plot assumes a Student t-distributed outcome.

The right panel of Figure 4 shows that the model predicts numerous values higher than 3.5. To assess how well the proportion of predicted values higher than 3.5 represents the proportion of observed censored values, a third posterior predictive check was performed. Figure 5 shows that the model underestimates the proportion of noise blasts longer 3.5 seconds. However, in absolute sense, this misfit is small enough to move forward with this model.

Figure 5: Posterior predictive checks (ppc) for the proportion right censored outcomes for behavioural (aggresive) response. A Student t-distributed outcome was assumed.

Results for the noise model (with Student t-distributed response) are shown below. The fixed effects estimated \(\hat{\theta}_{1}\), \(\hat{\theta}_{2}\), and \(\hat{\theta}_{3}\) can be found under Population-Level Effects as noise_con, noise_con:miagec, and noise_con:miagec2, respectively. Standard deviation estimates of random effects at the family-level (i.e., \(z\) parameters) are reported under ~fam, standard deviation estimations of random effects at the individual-level (i.e., \(v\) parameters) are reported under ~fam:id, and standard deviation estimates of random effecst at the wave-level (i.e., \(u\) parameters) are reported under fam:id:wave.

Warning: Parts of the model have not converged (some Rhats are > 1.05). Be
careful when analysing the results! We recommend running more iterations and/or
setting stronger priors.
 Family: MV(student, gaussian, gaussian) 
  Links: mu = identity; sigma = identity; nu = identity
         mu = identity; sigma = identity
         mu = identity; sigma = identity 
Formula: noise | cens(censored) + mi() ~ 1 + con + con:mi(agec) + con:mi(agec2) + (1 + con || fam/id/wave) + (-1 + con:mi(agec) + con:mi(agec2) || fam/id) 
         agec | mi() ~ -1 + ageW1c + wave0 
         agec2 | mi() ~ -1 + ageW1c2 + ageW1c_wave0 + wave02 
   Data: df_noise (Number of observations: 48976) 
  Draws: 2 chains, each with iter = 4000; warmup = 2000; thin = 4;
         total post-warmup draws = 1000

Group-Level Effects: 
~fam (Number of levels: 256) 
                      Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS
sd(noise_Intercept)       0.13      0.06     0.01     0.24 1.02      159
sd(noise_con)             0.31      0.07     0.15     0.43 1.04       89
sd(noise_con:miagec)      0.09      0.04     0.01     0.16 1.01      168
sd(noise_con:miagec2)     0.02      0.01     0.00     0.05 1.00      255
                      Tail_ESS
sd(noise_Intercept)        502
sd(noise_con)              171
sd(noise_con:miagec)       260
sd(noise_con:miagec2)      417

~fam:id (Number of levels: 512) 
                      Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS
sd(noise_Intercept)       0.31      0.05     0.21     0.39 1.04      180
sd(noise_con)             0.23      0.10     0.03     0.42 1.06       55
sd(noise_con:miagec)      0.04      0.03     0.00     0.11 1.02      208
sd(noise_con:miagec2)     0.01      0.01     0.00     0.03 1.00      447
                      Tail_ESS
sd(noise_Intercept)        228
sd(noise_con)              231
sd(noise_con:miagec)       334
sd(noise_con:miagec2)      506

~fam:id:wave (Number of levels: 1302) 
                    Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
sd(noise_Intercept)     0.73      0.02     0.69     0.77 1.00      423      838
sd(noise_con)           0.95      0.03     0.89     1.01 1.03      181      614

Population-Level Effects: 
                   Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
noise_Intercept        1.68      0.03     1.63     1.73 1.01      716      732
noise_con              1.40      0.05     1.31     1.49 1.00      692      759
agec_ageW1c            1.02      0.00     1.02     1.03 1.00      906      686
agec_wave0             2.22      0.00     2.22     2.22 1.00      915      999
agec2_ageW1c2          1.00      0.00     1.00     1.01 1.00     1014      920
agec2_ageW1c_wave0     4.50      0.01     4.49     4.51 1.00      919      828
agec2_wave02           5.05      0.01     5.04     5.06 1.00      873      733
noise_con:miagec      -0.01      0.02    -0.05     0.02 1.00      869      856
noise_con:miagec2     -0.04      0.01    -0.06    -0.03 1.00      757      850

Family Specific Parameters: 
            Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
sigma_noise     0.25      0.00     0.25     0.26 1.00      908      977
sigma_agec      0.18      0.00     0.18     0.18 1.00      993      947
sigma_agec2     0.89      0.00     0.88     0.89 1.00      950      921
nu_noise        1.01      0.01     1.00     1.03 1.00      910      735

Draws were sampled using sampling(NUTS). For each parameter, Bulk_ESS
and Tail_ESS are effective sample size measures, and Rhat is the potential
scale reduction factor on split chains (at convergence, Rhat = 1).

The \(\hat{R}\)-value for the random within-family effect of the mean noise response \(SD(v_{1})\) is not below the recommended value 1.05, indicating that the posterior sampling chains have not converged sufficiently yet to a stable solution. Moreover, the bulk effective sample size Bulk_ESS for this parameter, as well as for the random between-family effect of the mean noise response \(SD(z_{1})\), is (far) below the recommended number of effective samples (100 times the number of chains). This speaks to the complexity of the model, especially in relation to the relatively low sample sizes at the family- and individual-level.

The fixed effects show that there is 95% certainty that expected response in noise at 9 years and 9 months of age \(\theta_{1}\) lies between \(1.31\) and \(1.49\) seconds. The random effects imply that there are significant differences between individuals (within families) herein, \(SD(v_{1}) = [0.03 - 0.42]\), as well as significant between-family differences, \(SD(z_{1}) = [0.15 - 0.43]\). Linear development of noise at mean age \(\theta_{2}\) lies between \(-0.05\) and \(0.02\). The random effect estimates suggests slight between family differences herein, \(SD(z_{2}) = [0.01 - 0.16]\). The quadratic development of noise at mean age \(\theta_{3}\) is estimated to lie between \(-0.06\) and \(-0.03\), and no significant differences between individuals, \(SD(v_{3}) = [0.00 - 0.03]\), or between families, \(SD(z_{3}) = [0.00 - 0.05]\), have been found.

Figure 6: Model predicted development in behavioral response.

Results for the DLPFC model are shown below.

 Family: MV(gaussian, gaussian, gaussian) 
  Links: mu = identity; sigma = identity
         mu = identity; sigma = identity
         mu = identity; sigma = identity 
Formula: DLPFC | mi() ~ 1 + mi(agec) + mi(agec2) + (1 + mi(agec) + mi(agec2) | fam/id) 
         agec | mi() ~ -1 + ageW1c + wave0 
         agec2 | mi() ~ -1 + ageW1c2 + ageW1c_wave0 + wave02 
   Data: df_brain (Number of observations: 1536) 
  Draws: 2 chains, each with iter = 4000; warmup = 2000; thin = 4;
         total post-warmup draws = 1000

Group-Level Effects: 
~fam (Number of levels: 256) 
                                   Estimate Est.Error l-95% CI u-95% CI Rhat
sd(DLPFC_Intercept)                    0.31      0.23     0.01     0.84 1.00
sd(DLPFC_miagec)                       0.18      0.12     0.01     0.43 1.00
sd(DLPFC_miagec2)                      0.06      0.05     0.00     0.16 1.00
cor(DLPFC_Intercept,DLPFC_miagec)     -0.08      0.50    -0.89     0.86 1.00
cor(DLPFC_Intercept,DLPFC_miagec2)    -0.23      0.50    -0.94     0.79 1.00
cor(DLPFC_miagec,DLPFC_miagec2)        0.01      0.50    -0.86     0.90 1.00
                                   Bulk_ESS Tail_ESS
sd(DLPFC_Intercept)                     519      749
sd(DLPFC_miagec)                        475      746
sd(DLPFC_miagec2)                       424      683
cor(DLPFC_Intercept,DLPFC_miagec)       687      775
cor(DLPFC_Intercept,DLPFC_miagec2)      550      768
cor(DLPFC_miagec,DLPFC_miagec2)         741      900

~fam:id (Number of levels: 512) 
                                   Estimate Est.Error l-95% CI u-95% CI Rhat
sd(DLPFC_Intercept)                    0.38      0.26     0.02     0.97 1.00
sd(DLPFC_miagec)                       0.25      0.14     0.02     0.53 1.02
sd(DLPFC_miagec2)                      0.06      0.04     0.00     0.17 1.00
cor(DLPFC_Intercept,DLPFC_miagec)     -0.15      0.46    -0.90     0.78 1.00
cor(DLPFC_Intercept,DLPFC_miagec2)    -0.13      0.49    -0.89     0.83 1.00
cor(DLPFC_miagec,DLPFC_miagec2)        0.02      0.48    -0.83     0.86 1.01
                                   Bulk_ESS Tail_ESS
sd(DLPFC_Intercept)                     395      605
sd(DLPFC_miagec)                        196      540
sd(DLPFC_miagec2)                       404      562
cor(DLPFC_Intercept,DLPFC_miagec)       477      799
cor(DLPFC_Intercept,DLPFC_miagec2)      717      749
cor(DLPFC_miagec,DLPFC_miagec2)         507      841

Population-Level Effects: 
                   Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
DLPFC_Intercept       -0.38      0.15    -0.65    -0.09 1.00      770      908
agec_ageW1c            1.02      0.00     1.02     1.03 1.00      978      960
agec_wave0             2.22      0.01     2.21     2.23 1.01     1010      991
agec2_ageW1c2          1.00      0.01     0.99     1.02 1.00     1030      960
agec2_ageW1c_wave0     4.49      0.03     4.43     4.55 1.00     1053      922
agec2_wave02           5.04      0.03     4.98     5.10 1.00     1079     1028
DLPFC_miagec          -0.01      0.06    -0.14     0.11 1.00      889      876
DLPFC_miagec2          0.05      0.03    -0.02     0.11 1.00      894     1025

Family Specific Parameters: 
            Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
sigma_DLPFC     3.23      0.09     3.04     3.41 1.00      482      723
sigma_agec      0.18      0.00     0.17     0.18 1.01      955      939
sigma_agec2     0.87      0.02     0.84     0.91 1.00      932      822

Draws were sampled using sampling(NUTS). For each parameter, Bulk_ESS
and Tail_ESS are effective sample size measures, and Rhat is the potential
scale reduction factor on split chains (at convergence, Rhat = 1).

The \(\hat{R}\)-values are below the recommended 1.05, indicating adequate mixing of the posterior sampling chains. The posterior predictive checks in Figure 7 below imply that the model shows adequate fit for both the imputed values of age and age\(^{2}\), as well as for the response variable DLPFC.

Figure 7: Posterior predictive check for a) the DLPFC response, b) imputed values of age, and c) imputed values of age-squared. Dark blue lines represents observed data. Light blue lines represent model predicted (replicated) values.

The fixed effects show that there is 95% certainty that expected response in DLPFC at 9 years and 9 months of age \(\theta_{1}\) lies between \(-0.65\) and \(-0.09\). The random effects imply that there are significant between families differences herein, \(SD(z_{1}) = [0.01 - 0.84]\), as well as significant within family differences, \(SD(v_{1}) = [0.02 - 0.97]\). Linear development of DLPFC at mean age \(\theta_{2}\) lies between \(-0.14\) and \(0.11\). Again, the random effect estimates suggests differences between families herein, \(SD(z_{2}) = [0.01 - 0.43]\), as well as within families, \(SD(v_{2}) = [0.02 - 0.53]\). The quadratic development of DLPFC at mean age \(\theta_{3}\) is estimated to lie between \(-0.02\) and \(0.11\), and no significant differences between families, \(SD(z_{3}) = [0.00 - 0.16]\), or within families, \(SD(v_{3}) = [0.00 - 0.17]\), have been found.

These results are visualized in Figure 8. The thick black line represents predicted development in DLPFC response over time based on the fixed effects estimates. The lighter black lines denote the uncertainty around this estimated development. The red dotted line denotes the mean age of the sample.

Figure 8: Model predicted development in DLPFC response.

Results for the AI model are shown below. Note that the term INS here refers to the anterior insula AI.

Warning: There were 1 divergent transitions after warmup. Increasing
adapt_delta above 0.8 may help. See
http://mc-stan.org/misc/warnings.html#divergent-transitions-after-warmup
 Family: MV(gaussian, gaussian, gaussian) 
  Links: mu = identity; sigma = identity
         mu = identity; sigma = identity
         mu = identity; sigma = identity 
Formula: INS | mi() ~ 1 + mi(agec) + mi(agec2) + (1 + mi(agec) + mi(agec2) | fam/id) 
         agec | mi() ~ -1 + ageW1c + wave0 
         agec2 | mi() ~ -1 + ageW1c2 + ageW1c_wave0 + wave02 
   Data: df_brain (Number of observations: 1536) 
  Draws: 2 chains, each with iter = 4000; warmup = 2000; thin = 4;
         total post-warmup draws = 1000

Group-Level Effects: 
~fam (Number of levels: 256) 
                               Estimate Est.Error l-95% CI u-95% CI Rhat
sd(INS_Intercept)                  0.29      0.21     0.01     0.81 1.00
sd(INS_miagec)                     0.14      0.10     0.01     0.35 1.01
sd(INS_miagec2)                    0.05      0.04     0.00     0.14 1.00
cor(INS_Intercept,INS_miagec)     -0.12      0.51    -0.91     0.85 1.00
cor(INS_Intercept,INS_miagec2)    -0.18      0.52    -0.93     0.83 1.00
cor(INS_miagec,INS_miagec2)       -0.11      0.51    -0.92     0.89 1.00
                               Bulk_ESS Tail_ESS
sd(INS_Intercept)                   613      610
sd(INS_miagec)                      417      848
sd(INS_miagec2)                     513      695
cor(INS_Intercept,INS_miagec)       820      910
cor(INS_Intercept,INS_miagec2)      794      861
cor(INS_miagec,INS_miagec2)         959      943

~fam:id (Number of levels: 512) 
                               Estimate Est.Error l-95% CI u-95% CI Rhat
sd(INS_Intercept)                  0.46      0.28     0.02     1.01 1.01
sd(INS_miagec)                     0.37      0.17     0.03     0.66 1.00
sd(INS_miagec2)                    0.06      0.05     0.00     0.17 1.00
cor(INS_Intercept,INS_miagec)     -0.44      0.46    -0.96     0.76 1.00
cor(INS_Intercept,INS_miagec2)    -0.07      0.50    -0.90     0.88 1.00
cor(INS_miagec,INS_miagec2)       -0.36      0.48    -0.97     0.75 1.00
                               Bulk_ESS Tail_ESS
sd(INS_Intercept)                   273      544
sd(INS_miagec)                      251      534
sd(INS_miagec2)                     344      651
cor(INS_Intercept,INS_miagec)       184      304
cor(INS_Intercept,INS_miagec2)      549      658
cor(INS_miagec,INS_miagec2)         544      798

Population-Level Effects: 
                   Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
INS_Intercept          0.73      0.15     0.42     1.03 1.00      768      876
agec_ageW1c            1.02      0.00     1.02     1.03 1.00     1065      979
agec_wave0             2.22      0.01     2.21     2.23 1.00      880      905
agec2_ageW1c2          1.00      0.01     0.99     1.02 1.00      940      987
agec2_ageW1c_wave0     4.49      0.03     4.43     4.55 1.00      909      907
agec2_wave02           5.04      0.03     4.98     5.10 1.00      928      838
INS_miagec            -0.16      0.07    -0.29    -0.02 1.00     1156     1030
INS_miagec2            0.06      0.03    -0.01     0.13 1.00      987      941

Family Specific Parameters: 
            Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
sigma_INS       3.24      0.11     3.02     3.44 1.00      300      667
sigma_agec      0.18      0.00     0.17     0.18 1.00      975      860
sigma_agec2     0.87      0.02     0.84     0.91 1.00      971      875

Draws were sampled using sampling(NUTS). For each parameter, Bulk_ESS
and Tail_ESS are effective sample size measures, and Rhat is the potential
scale reduction factor on split chains (at convergence, Rhat = 1).

The estimation procedure resulted in 1 warning about a single divergent transition after the warm-up phase. Divergences can occur when the sampling procedure has difficulties exploring the target posterior distribution, which is an issue when the curvature of the posterior is highly variable. However, because there is only a single divergence, and there are good \(\hat{R}\) values, and effective sample sizes for the bulk and tail of the distribution, there is enough confidence in the resulting posterior to move forward.

The posterior predictive checks in Figure 9 below imply that the model shows adequate fit for both the imputed values of age and age\(^{2}\), as well as for the response variable AI.

Figure 9: Posterior predictive check for a) the AI response, b) imputed values of age, and c) imputed values of age-squared.

The fixed effects show that there is 95% certainty that expected response in AI at 9 years and 9 months of age \(\theta_{1}\) lies between \(0.42\) and \(1.03\). The random effects imply that there are significant differences between individuals within families herein, \(SD(z_{1}) = [0.01 - 0.81]\), as well as significant within family differences, \(SD(v_{1}) = [0.02 - 1.01]\). Linear development of AI at mean age \(\theta_{2}\) lies between \(-0.29\) and \(-0.02\). Again, the random effect estimates suggests differences between families herein, \(SD(z_{2}) = [0.01 - 0.35]\), as well as within families, \(SD(v_{2}) = [0.03 - 0.66]\). The quadratic development of AI at mean age \(\theta_{3}\) is estimated to lie between \(-0.01\) and \(0.13\), and no significant differences between families, \(SD(z_{3}) = [0.00 - 0.14]\), or within families, \(SD(v_{3}) = [0.00 - 0.17]\), have been found.

These results are visualized in Figure 10. The thick black line represents predicted development in AI response over time based on the fixed effects estimates. The lighter black lines denote the uncertainty around this estimated development. The red dotted line denotes the mean age of the sample.

Figure 10: Model predicted development in AI response.

Results for the MPFC model are shown below:

Warning: There were 1 divergent transitions after warmup. Increasing
adapt_delta above 0.8 may help. See
http://mc-stan.org/misc/warnings.html#divergent-transitions-after-warmup
 Family: MV(gaussian, gaussian, gaussian) 
  Links: mu = identity; sigma = identity
         mu = identity; sigma = identity
         mu = identity; sigma = identity 
Formula: MPFC | mi() ~ 1 + mi(agec) + mi(agec2) + (1 + mi(agec) + mi(agec2) | fam/id) 
         agec | mi() ~ -1 + ageW1c + wave0 
         agec2 | mi() ~ -1 + ageW1c2 + ageW1c_wave0 + wave02 
   Data: df_brain (Number of observations: 1536) 
  Draws: 2 chains, each with iter = 4000; warmup = 2000; thin = 4;
         total post-warmup draws = 1000

Group-Level Effects: 
~fam (Number of levels: 256) 
                                 Estimate Est.Error l-95% CI u-95% CI Rhat
sd(MPFC_Intercept)                   0.93      0.39     0.13     1.62 1.01
sd(MPFC_miagec)                      0.11      0.08     0.00     0.31 1.00
sd(MPFC_miagec2)                     0.10      0.07     0.00     0.27 1.02
cor(MPFC_Intercept,MPFC_miagec)      0.06      0.49    -0.85     0.89 1.00
cor(MPFC_Intercept,MPFC_miagec2)    -0.49      0.46    -0.97     0.69 1.01
cor(MPFC_miagec,MPFC_miagec2)       -0.01      0.49    -0.87     0.89 1.00
                                 Bulk_ESS Tail_ESS
sd(MPFC_Intercept)                    258      622
sd(MPFC_miagec)                       661      946
sd(MPFC_miagec2)                      189      195
cor(MPFC_Intercept,MPFC_miagec)       750      635
cor(MPFC_Intercept,MPFC_miagec2)      423      582
cor(MPFC_miagec,MPFC_miagec2)         598      808

~fam:id (Number of levels: 512) 
                                 Estimate Est.Error l-95% CI u-95% CI Rhat
sd(MPFC_Intercept)                   0.55      0.38     0.03     1.37 1.01
sd(MPFC_miagec)                      0.24      0.14     0.01     0.56 1.01
sd(MPFC_miagec2)                     0.09      0.06     0.00     0.23 1.00
cor(MPFC_Intercept,MPFC_miagec)      0.22      0.47    -0.74     0.91 1.01
cor(MPFC_Intercept,MPFC_miagec2)    -0.20      0.51    -0.94     0.84 1.00
cor(MPFC_miagec,MPFC_miagec2)        0.22      0.47    -0.77     0.91 1.01
                                 Bulk_ESS Tail_ESS
sd(MPFC_Intercept)                    217      345
sd(MPFC_miagec)                       251      360
sd(MPFC_miagec2)                      234      305
cor(MPFC_Intercept,MPFC_miagec)       274      599
cor(MPFC_Intercept,MPFC_miagec2)      326      697
cor(MPFC_miagec,MPFC_miagec2)         396      758

Population-Level Effects: 
                   Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
MPFC_Intercept         0.87      0.17     0.52     1.20 1.00      882      964
agec_ageW1c            1.02      0.00     1.02     1.03 1.00      909      834
agec_wave0             2.22      0.01     2.21     2.23 1.00      972      887
agec2_ageW1c2          1.00      0.01     0.99     1.02 1.01      831      594
agec2_ageW1c_wave0     4.49      0.03     4.43     4.55 1.00      825      986
agec2_wave02           5.04      0.03     4.98     5.10 1.00      773      682
MPFC_miagec           -0.04      0.07    -0.17     0.10 1.00      842      912
MPFC_miagec2           0.06      0.04    -0.01     0.13 1.00      796      593

Family Specific Parameters: 
            Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
sigma_MPFC      3.42      0.11     3.19     3.64 1.00      328      694
sigma_agec      0.18      0.00     0.17     0.18 1.00     1024     1029
sigma_agec2     0.87      0.02     0.84     0.91 1.00      865      887

Draws were sampled using sampling(NUTS). For each parameter, Bulk_ESS
and Tail_ESS are effective sample size measures, and Rhat is the potential
scale reduction factor on split chains (at convergence, Rhat = 1).

The estimation procedure resulted in 1 warning about a single divergent transition after the warm-up phase. Divergences can occur when the sampling procedure has difficulties exploring the target posterior distribution, which is an issue when the curvature of the posterior is highly variable. However, because there is only a single divergence, and there are good \(\hat{R}\) values, and effective sample sizes for the bulk and tail of the distribution, there is enough confidence in the resulting posterior to move forward.

The posterior predictive checks in Figure 11 below imply that the model shows adequate fit for both the imputed values of age and age\(^{2}\), as well as for the response variable MPFC.

Figure 11: Posterior predictive check for a) the MPFC response, b) imputed values of age, and c) imputed values of age-squared.

The fixed effects show that there is 95% certainty that expected response in MPFC at 9 years and 9 months of age \(\theta_{1}\) lies between \(0.52\) and \(1.20\). The random effects imply that there are significant differences between individuals within families herein, \(SD(z_{1}) = [0.13 - 1.62]\), as well as significant within family differences, \(SD(v_{1}) = [0.03 - 1.37]\). Linear development of MPFC at mean age \(\theta_{2}\) lies between \(-0.17\) and \(0.10\). In contrast to the response variables DLPFC and MPFC, the random effect estimates suggests no differences between families in linear development, \(SD(z_{2}) = [0.00 - 0.31]\), but only individual-level differences within families herein, \(SD(v_{2}) = [0.01 - 0.56]\). The quadratic development of MPFC at mean age \(\theta_{3}\) is estimated to lie between \(-0.01\) and \(0.13\), and no significant differences between families, \(SD(z_{3}) = [0.00 - 0.27]\), or within families, \(SD(v_{3}) = [0.00 - 0.23]\), have been found.

These results are visualized in Figure 12. The thick black line represents predicted development in MPFC response over time based on the fixed effects estimates. The lighter black lines denote the uncertainty around this estimated development. The red dotted line denotes the mean age of the sample.

Figure 12: Model predicted development in MPFC response.

Associations between social emotion regulation development and social well-being (Aims 2 and 3)

The fitted multivariate regression model, predicting social well-being subscale from the individual growth components extracted from the multilevel growth curve model, is saturated (there are 0 degrees of freedom). Hence, model fit is perfect. Analyses on 47 datasets of plausible values for the individual-level growth components did not result in convergence, such that the pooled results below are based on 953 data sets. In the output, gamma10_, gamma11_ and gamma12_ represent \(\hat{\gamma}_{10}\), \(\hat{\gamma}_{11}\), and \(\hat{\gamma}_{12}\), respectively, with the text after the underscore _ denoting the outcome that the growth component belongs to. The term INS refers to the anterior insula AI.

lavaan.mi object based on 1000 imputed data sets. 
See class?lavaan.mi help page for available methods. 

Convergence information:
The model converged on 953 imputed data sets 

Standard errors could not be computed for data set(s) 76, 148, 171, 198, 223, 261, 315, 362, 418, 429, 455, 461, 463, 467, 468, 563, 568, 625, 657, 662, 682, 694, 698, 708, 724, 725, 727, 729, 745, 747, 762, 811, 823, 872, 888, 896, 897, 898, 941, 943, 948, 949, 957, 959, 977, 978, 989, 997 
Try fitting the model to the individual data set(s) to diagnose problems. If they cannot be fixed, try inspecting the imputations. It may be necessary to reimpute the data with some restrictions imposed. 

Rubin's (1987) rules were used to pool point and SE estimates across 952 imputed data sets, and to calculate degrees of freedom for each parameter's t test and CI.

Parameter Estimates:

  Standard errors                             Standard
  Information                                 Observed
  Observed information based on                Hessian

Regressions:
                   Estimate  Std.Err  t-value       df  P(>|t|)
  co ~                                                         
    gamma10_INS       0.014    1.102    0.013 3602.563    0.990
    gamma11_INS      -0.019    0.527   -0.036 3772.834    0.971
    gamma12_INS      -0.045    2.840   -0.016 2816.765    0.987
    gamma10_DLPFC    -0.008    0.534   -0.015 4278.176    0.988
    gamma11_DLPFC     0.007    0.694    0.009 3205.957    0.992
    gamma12_DLPFC    -0.053    2.452   -0.022 3442.873    0.983
    gamma10_MPFC     -0.016    0.145   -0.108 3598.488    0.914
    gamma11_MPFC      0.025    1.139    0.022 2104.990    0.982
    gamma12_MPFC     -0.053    1.445   -0.037 3664.424    0.971
    gamma10_noise    -0.008    0.249   -0.034 4846.232    0.973
    gamma11_noise    -0.024    1.498   -0.016 2749.301    0.987
    gamma12_noise     0.269    6.483    0.041 3003.788    0.967
  who ~                                                        
    gamma10_INS       0.018    1.011    0.018 5396.965    0.986
    gamma11_INS       0.002    0.479    0.003 3440.754    0.997
    gamma12_INS       0.011    2.582    0.004 3108.163    0.996
    gamma10_DLPFC     0.004    0.485    0.008 2713.486    0.994
    gamma11_DLPFC     0.018    0.629    0.029 3637.756    0.977
    gamma12_DLPFC     0.001    2.232    0.000 3505.778    1.000
    gamma10_MPFC     -0.003    0.132   -0.020 3313.944    0.984
    gamma11_MPFC     -0.000    1.037   -0.000 2091.590    1.000
    gamma12_MPFC     -0.029    1.315   -0.022 3460.460    0.982
    gamma10_noise    -0.012    0.226   -0.052 4431.061    0.958
    gamma11_noise     0.021    1.361    0.015 2664.699    0.988
    gamma12_noise     0.158    5.895    0.027 2803.104    0.979
  sc ~                                                         
    gamma10_INS       0.008    1.569    0.005 4900.227    0.996
    gamma11_INS       0.038    0.744    0.051 4186.455    0.959
    gamma12_INS       0.044    4.009    0.011 3258.919    0.991
    gamma10_DLPFC    -0.017    0.753   -0.022 2837.538    0.982
    gamma11_DLPFC     0.060    0.978    0.062 3509.425    0.951
    gamma12_DLPFC    -0.084    3.460   -0.024 3589.245    0.981
    gamma10_MPFC      0.005    0.204    0.026 3440.141    0.979
    gamma11_MPFC      0.017    1.609    0.010 3186.562    0.992
    gamma12_MPFC     -0.001    2.035   -0.001 3431.306    1.000
    gamma10_noise     0.018    0.351    0.052 4616.662    0.958
    gamma11_noise     0.056    2.111    0.027 3627.702    0.979
    gamma12_noise     0.466    9.138    0.051 3000.637    0.959
  cf ~                                                         
    gamma10_INS       0.015    1.471    0.010 5873.341    0.992
    gamma11_INS       0.015    0.699    0.022 3981.034    0.982
    gamma12_INS      -0.037    3.754   -0.010 3727.401    0.992
    gamma10_DLPFC    -0.007    0.705   -0.010 3497.425    0.992
    gamma11_DLPFC     0.044    0.916    0.048 4770.536    0.962
    gamma12_DLPFC    -0.089    3.244   -0.028 3715.325    0.978
    gamma10_MPFC     -0.006    0.192   -0.031 3502.991    0.975
    gamma11_MPFC      0.007    1.518    0.005 5566.326    0.996
    gamma12_MPFC     -0.092    1.912   -0.048 3598.742    0.961
    gamma10_noise     0.032    0.330    0.097 4838.684    0.923
    gamma11_noise     0.094    1.977    0.047 3104.149    0.962
    gamma12_noise     0.688    8.587    0.080 2835.671    0.936
  gs ~                                                         
    gamma10_INS      -0.006    1.699   -0.004      Inf    0.997
    gamma11_INS       0.001    0.821    0.001 3514.625    0.999
    gamma12_INS      -0.139    4.418   -0.031 3037.989    0.975
    gamma10_DLPFC     0.005    0.834    0.006 2446.871    0.995
    gamma11_DLPFC    -0.004    1.076   -0.004 4855.236    0.997
    gamma12_DLPFC    -0.052    3.814   -0.014 4369.884    0.989
    gamma10_MPFC     -0.014    0.226   -0.063 3272.965    0.950
    gamma11_MPFC     -0.002    1.780   -0.001 8666.436    0.999
    gamma12_MPFC     -0.089    2.249   -0.040 3990.857    0.968
    gamma10_noise    -0.052    0.388   -0.134 4623.523    0.893
    gamma11_noise     0.118    2.334    0.050 3451.095    0.960
    gamma12_noise     0.275   10.086    0.027 3438.966    0.978

Covariances:
                   Estimate  Std.Err  t-value       df  P(>|t|)
  gamma10_INS ~~                                               
    gamma11_INS      -0.123    0.054   -2.280  978.689    0.023
    gamma12_INS      -0.014    0.012   -1.164  973.246    0.245
    gamma10_DLPFC     0.011    0.062    0.176 2320.853    0.860
    gamma11_DLPFC    -0.005    0.037   -0.147 2769.787    0.884
    gamma12_DLPFC    -0.000    0.011   -0.024 3048.841    0.980
    gamma10_MPFC      0.037    0.120    0.309 1960.657    0.758
    gamma11_MPFC     -0.001    0.031   -0.029 3503.667    0.977
    gamma12_MPFC     -0.002    0.017   -0.148 2452.313    0.882
    gamma10_noise     0.001    0.041    0.021 3107.585    0.984
    gamma11_noise    -0.000    0.011   -0.012 3504.366    0.990
    gamma12_noise     0.000    0.003    0.005 3464.348    0.996
  gamma11_INS ~~                                               
    gamma12_INS      -0.016    0.008   -1.884  975.958    0.060
    gamma10_DLPFC    -0.004    0.041   -0.110 2995.357    0.913
    gamma11_DLPFC     0.005    0.024    0.222 2705.899    0.825
    gamma12_DLPFC     0.000    0.007    0.005 3347.136    0.996
    gamma10_MPFC     -0.012    0.082   -0.147 2868.585    0.883
    gamma11_MPFC      0.003    0.020    0.137 2763.513    0.891
    gamma12_MPFC      0.001    0.012    0.091 3242.515    0.927
    gamma10_noise    -0.000    0.028   -0.006 3570.822    0.995
    gamma11_noise    -0.000    0.007   -0.007 3679.528    0.994
    gamma12_noise     0.000    0.002    0.017 3597.838    0.986
  gamma12_INS ~~                                               
    gamma10_DLPFC     0.000    0.009    0.012 2911.179    0.990
    gamma11_DLPFC    -0.000    0.006   -0.050 2977.085    0.960
    gamma12_DLPFC     0.000    0.002    0.061 2787.494    0.952
    gamma10_MPFC     -0.000    0.019   -0.006 2426.917    0.995
    gamma11_MPFC     -0.000    0.005   -0.013 3125.599    0.989
    gamma12_MPFC      0.000    0.003    0.050 2738.385    0.960
    gamma10_noise     0.000    0.006    0.007 3319.141    0.995
    gamma11_noise     0.000    0.002    0.006 3126.626    0.995
    gamma12_noise    -0.000    0.000   -0.018 3348.258    0.985
  gamma10_DLPFC ~~                                             
    gamma11_DLPFC    -0.032    0.036   -0.901  993.214    0.368
    gamma12_DLPFC    -0.020    0.013   -1.532  971.640    0.126
    gamma10_MPFC      0.038    0.114    0.331 1769.983    0.741
    gamma11_MPFC     -0.000    0.030   -0.002 2599.559    0.998
    gamma12_MPFC     -0.002    0.016   -0.146 2113.554    0.884
    gamma10_noise    -0.002    0.038   -0.055 3139.454    0.956
    gamma11_noise     0.000    0.011    0.006 3013.324    0.995
    gamma12_noise     0.000    0.002    0.025 2752.542    0.980
  gamma11_DLPFC ~~                                             
    gamma12_DLPFC     0.000    0.006    0.073  991.814    0.942
    gamma10_MPFC     -0.006    0.066   -0.095 2443.058    0.924
    gamma11_MPFC      0.003    0.017    0.178 2407.887    0.859
    gamma12_MPFC      0.001    0.009    0.110 2550.326    0.912
    gamma10_noise     0.002    0.022    0.068 3694.399    0.946
    gamma11_noise    -0.000    0.006   -0.046 3053.121    0.963
    gamma12_noise     0.000    0.001    0.041 2801.756    0.967
  gamma12_DLPFC ~~                                             
    gamma10_MPFC     -0.001    0.021   -0.030 2538.687    0.976
    gamma11_MPFC      0.000    0.005    0.064 2661.278    0.949
    gamma12_MPFC      0.000    0.003    0.120 2630.243    0.904
    gamma10_noise    -0.000    0.007   -0.021 3237.306    0.983
    gamma11_noise     0.000    0.002    0.021 2785.660    0.983
    gamma12_noise    -0.000    0.000   -0.009 2498.357    0.993
  gamma10_MPFC ~~                                              
    gamma11_MPFC      0.054    0.064    0.845 1009.272    0.398
    gamma12_MPFC     -0.111    0.043   -2.583  973.417    0.010
    gamma10_noise     0.004    0.076    0.052 2931.212    0.959
    gamma11_noise     0.000    0.021    0.018 2777.749    0.986
    gamma12_noise    -0.000    0.005   -0.014 3055.931    0.989
  gamma11_MPFC ~~                                              
    gamma12_MPFC      0.006    0.009    0.672  999.912    0.502
    gamma10_noise     0.001    0.020    0.062 3231.218    0.950
    gamma11_noise    -0.000    0.005   -0.004 3443.936    0.997
    gamma12_noise     0.000    0.001    0.028 3260.018    0.977
  gamma12_MPFC ~~                                              
    gamma10_noise    -0.000    0.011   -0.029 3059.935    0.977
    gamma11_noise    -0.000    0.003   -0.011 2980.260    0.991
    gamma12_noise     0.000    0.001    0.003 2971.657    0.997
  gamma10_noise ~~                                             
    gamma11_noise    -0.003    0.007   -0.483 1820.898    0.629
    gamma12_noise     0.000    0.002    0.018 2440.501    0.986
  gamma11_noise ~~                                             
    gamma12_noise    -0.000    0.000   -0.222 1916.387    0.825
 .co ~~                                                        
   .who               0.135    0.046    2.959      Inf    0.003
   .sc                0.108    0.059    1.818      Inf    0.069
   .cf                0.088    0.055    1.606      Inf    0.108
   .gs                0.136    0.067    2.031      Inf    0.042
 .who ~~                                                       
   .sc                0.095    0.054    1.768      Inf    0.077
   .cf                0.075    0.050    1.519      Inf    0.129
   .gs                0.159    0.065    2.459      Inf    0.014
 .sc ~~                                                        
   .cf                0.141    0.079    1.797      Inf    0.072
   .gs                0.145    0.091    1.597      Inf    0.110
 .cf ~~                                                        
   .gs                0.142    0.086    1.655      Inf    0.098

Intercepts:
                   Estimate  Std.Err  t-value       df  P(>|t|)
   .co                2.299    1.145    2.007 3763.188    0.045
   .who               2.266    1.048    2.162 4612.588    0.031
   .sc                2.188    1.626    1.345 4639.609    0.179
   .cf                2.433    1.525    1.596 5468.102    0.111
   .gs                2.417    1.768    1.367 7376.429    0.172
    gamma10_INS       0.729    0.101    7.205 1018.402    0.000
    gamma11_INS      -0.154    0.068   -2.260 1126.581    0.024
    gamma12_INS       0.059    0.016    3.734  982.867    0.000
    gamma10_DLPFC    -0.375    0.094   -4.002 1016.304    0.000
    gamma11_DLPFC    -0.012    0.055   -0.219 1074.669    0.826
    gamma12_DLPFC     0.046    0.017    2.711  993.164    0.007
    gamma10_MPFC      0.872    0.189    4.620 1184.707    0.000
    gamma11_MPFC     -0.039    0.049   -0.804 1035.946    0.421
    gamma12_MPFC      0.058    0.026    2.204 1033.454    0.028
    gamma10_noise     1.400    0.063   22.177 1376.772    0.000
    gamma11_noise    -0.013    0.017   -0.722 1120.795    0.471
    gamma12_noise    -0.042    0.004  -10.511  987.562    0.000

Variances:
                   Estimate  Std.Err  t-value       df  P(>|t|)
    gamma10_INS       0.416    0.116    3.584  971.302    0.000
    gamma11_INS       0.188    0.049    3.833  978.050    0.000
    gamma12_INS       0.010    0.003    3.251  966.533    0.001
    gamma10_DLPFC     0.357    0.105    3.395  968.241    0.001
    gamma11_DLPFC     0.123    0.034    3.668  973.135    0.000
    gamma12_DLPFC     0.012    0.003    3.381  968.050    0.001
    gamma10_MPFC      1.445    0.364    3.974  984.739    0.000
    gamma11_MPFC      0.096    0.028    3.452  969.048    0.001
    gamma12_MPFC      0.028    0.008    3.501  969.806    0.000
    gamma10_noise     0.162    0.037    4.371 1082.165    0.000
    gamma11_noise     0.012    0.003    3.835  978.127    0.000
    gamma12_noise     0.001    0.000    3.150  965.565    0.002
   .co                0.183    0.055    3.325      Inf    0.001
   .who               0.151    0.045    3.325      Inf    0.001
   .sc                0.364    0.109    3.325      Inf    0.001
   .cf                0.321    0.097    3.325      Inf    0.001
   .gs                0.444    0.133    3.325      Inf    0.001

These results are interpreted in the main paper.

References

Achterberg, Michelle, Jeroen Mulder, Simone Dobbelaar, Stephan Heunis, and Eveline Crone. 2022. “Individual Differences in Developmental Trajectories of Social Emotion Regulation from Childhood to Emerging Adolescence.” Preregistration. https://doi.org/10.17605/OSF.IO/HDRZC.
Bürkner, Paul-Christian. 2017. Brms : An r Package for Bayesian Multilevel Models Using Stan.” Journal of Statistical Software 80 (1). https://doi.org/10.18637/jss.v080.i01.
Crone, Eveline A., Michelle Achterberg, Simone Dobbelaar, Saskia Euser, Bianca Van Den Bulk, Mara Van Der Meulen, Lina Van Drunen, Lara M. Wierenga, Marian J. Bakermans-Kranenburg, and Marinus H. Van IJzendoorn. 2020. “Neural and Behavioral Signatures of Social Evaluation and Adaptation in Childhood and Adolescence: The Leiden Consortium on Individual Development (L-CID).” Developmental Cognitive Neuroscience 45 (October): 100805. https://doi.org/10.1016/j.dcn.2020.100805.
Dobbelaar, Simone, Michelle Achterberg, Lina Van Drunen, Anna C. K Van Duijvenvoorde, Marinus H Van IJzendoorn, and Eveline A Crone. 2022. “Development of Social Feedback Processing and Responses in Childhood: An fMRI Test-Replication Design in Two Age Cohorts.” Social Cognitive and Affective Neuroscience, June, nsac039. https://doi.org/10.1093/scan/nsac039.
Gelman, Andrew, John B. Carlin, Hal S. Stern, David B. Dunson, Aki Vehtari, and Donald B. Rubin. 2013. Bayesian Data Analysis. 3rd ed. Chapman; Hall/CRC. https://doi.org/10.1201/b16018.
Jorgensen, Terrence D., Sunthud Pornprasertmanit, and Alexander M. Schoemann. 2022. semTools: Useful Tools for Structural Equation Modeling.” https://CRAN.R-project.org/package=semTools.
Mehta, Paras D., and Stephen G. West. 2000. “Putting the Individual Back into Individual Growth Curves.” Psychological Methods 5 (1): 23–43. https://doi.org/10.1037/1082-989X.5.1.23.
R Core Team. 2019. “R: A Language and Environment for Statistical Computing.” Vienna, Austria: R Foundation for Statistical Computing.
Rosseel, Yves. 2012. Lavaan : An r Package for Structural Equation Modeling.” Journal of Statistical Software 48 (2). https://doi.org/10.18637/jss.v048.i02.
Rubin, Donald B., ed. 1987. Multiple Imputation for Nonresponse in Surveys. Wiley Series in Probability and Statistics. Hoboken, NJ, USA: John Wiley & Sons, Inc. https://doi.org/10.1002/9780470316696.