Load packages

library(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr     1.1.2     ✔ readr     2.1.4
## ✔ forcats   1.0.0     ✔ stringr   1.5.0
## ✔ ggplot2   3.4.2     ✔ tibble    3.2.1
## ✔ lubridate 1.9.2     ✔ tidyr     1.3.0
## ✔ purrr     1.0.1     
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(here) 
## here() starts at /Users/sarahdaniels/Desktop/Total_Analyses_3
library(janitor) 
## 
## Attaching package: 'janitor'
## 
## The following objects are masked from 'package:stats':
## 
##     chisq.test, fisher.test
library(haven) 
library(naniar) 
library(ggpubr) 
library(report) 
library(ggplot2)
library(reshape2)
## 
## Attaching package: 'reshape2'
## 
## The following object is masked from 'package:tidyr':
## 
##     smiths
library(lme4)
## Loading required package: Matrix
## 
## Attaching package: 'Matrix'
## 
## The following objects are masked from 'package:tidyr':
## 
##     expand, pack, unpack
library(sjPlot)
## Learn more about sjPlot with 'browseVignettes("sjPlot")'.
library(parameters)
library(mediation)
## Loading required package: MASS
## 
## Attaching package: 'MASS'
## 
## The following object is masked from 'package:dplyr':
## 
##     select
## 
## Loading required package: mvtnorm
## Loading required package: sandwich
## mediation: Causal Mediation Analysis
## Version: 4.5.0
library(lavaan)
## This is lavaan 0.6-15
## lavaan is FREE software! Please report any bugs.
library(lmerTest)
## 
## Attaching package: 'lmerTest'
## 
## The following object is masked from 'package:lme4':
## 
##     lmer
## 
## The following object is masked from 'package:stats':
## 
##     step

Set up

Reading the full data (intervention group, psychoeducation control group, and EC group) and calculating total scores

Full_data_all_t <- read_csv("MI_Data_B1W1M1.csv") %>% 
  rowwise() %>%
  mutate(A_PRE_IUS_total = sum(B_IUS_1, B_IUS_2, B_IUS_3, B_IUS_4, B_IUS_5, B_IUS_6, B_IUS_7, B_IUS_8, B_IUS_9, B_IUS_10, B_IUS_11, B_IUS_12, na.rm = TRUE)) %>%
  mutate(A_PRE_FI_total = sum(B_FI_friends, B_FI_strangers, B_FI_work, B_FI_education, B_FI_hobbies, na.rm = TRUE)) %>% 
  mutate(A_PRE_RTQ_total = sum(B_RTQ_1, B_RTQ_2, B_RTQ_3, B_RTQ_4, B_RTQ_5, B_RTQ_6, B_RTQ_7, B_RTQ_8, B_RTQ_9, B_RTQ_10, na.rm = TRUE)) %>% 
  mutate(A_PRE_ERQ_Rtotal = sum(B_ERQ_1, B_ERQ_3, B_ERQ_5, B_ERQ_7, B_ERQ_8, B_ERQ_10, na.rm = TRUE)) %>% 
  mutate(A_PRE_PHQ_total = sum(B_PHQ_1, B_PHQ_2, B_PHQ_3, B_PHQ_4, B_PHQ_5, B_PHQ_6, B_PHQ_7, B_PHQ_8, na.rm = TRUE)) %>% 
  mutate(A_PRE_GAD_total = sum(B_GAD_1, B_GAD_2, B_GAD_3, B_GAD_4, B_GAD_5, B_GAD_6, B_GAD_7, na.rm = TRUE)) %>% 
  mutate(B_POST_IUS_total = sum(POST_IUS_1, POST_IUS_2, POST_IUS_3, POST_IUS_4, POST_IUS_5, POST_IUS_6, POST_IUS_7, POST_IUS_8, POST_IUS_9, POST_IUS_10, POST_IUS_11, POST_IUS_12, na.rm = TRUE)) %>%
  mutate(C_W1_IUS_total = sum(W1_IUS_1, W1_IUS_2, W1_IUS_3, W1_IUS_4, W1_IUS_5, W1_IUS_6, W1_IUS_7, W1_IUS_8, W1_IUS_9, W1_IUS_10, W1_IUS_11, W1_IUS_12, na.rm = TRUE)) %>%
  mutate(C_W1_FI_total = sum(W1_FI_friends, W1_FI_strangers, W1_FI_work, W1_FI_education, W1_FI_hobbies, na.rm = TRUE)) %>% 
  mutate(C_W1_RTQ_total = sum(W1_RTQ_1, W1_RTQ_2, W1_RTQ_3, W1_RTQ_4, W1_RTQ_5, W1_RTQ_6, W1_RTQ_7, W1_RTQ_8, W1_RTQ_9, W1_RTQ_10, na.rm = TRUE)) %>% 
  mutate(C_W1_ERQ_Rtotal = sum(W1_ERQ_1, W1_ERQ_3, W1_ERQ_5, W1_ERQ_7, W1_ERQ_8, W1_ERQ_10, na.rm = TRUE)) %>% 
  mutate(C_W1_PHQ_total = sum(W1_PHQ_1, W1_PHQ_2, W1_PHQ_3, W1_PHQ_4, W1_PHQ_5, W1_PHQ_6, W1_PHQ_7, W1_PHQ_8, na.rm = TRUE)) %>% 
  mutate(C_W1_GAD_total = sum(W1_GAD_1, W1_GAD_2, W1_GAD_3, W1_GAD_4, W1_GAD_5, W1_GAD_6, W1_GAD_7, na.rm = TRUE)) %>% 
  mutate(D_M1_IUS_total = sum(M1_IUS_1, M1_IUS_2, M1_IUS_3, M1_IUS_4, M1_IUS_5, M1_IUS_6, M1_IUS_7, M1_IUS_8, M1_IUS_9, M1_IUS_10, M1_IUS_11, M1_IUS_12, na.rm = TRUE)) %>%
  mutate(D_M1_FI_total = sum(M1_FI_friends, M1_FI_strangers, M1_FI_work, M1_FI_education, M1_FI_hobbies, na.rm = TRUE)) %>% 
  mutate(D_M1_RTQ_total = sum(M1_RTQ_1, M1_RTQ_2, M1_RTQ_3, M1_RTQ_4, M1_RTQ_5, M1_RTQ_6, M1_RTQ_7, M1_RTQ_8, M1_RTQ_9, M1_RTQ_10, na.rm = TRUE)) %>% 
  mutate(D_M1_ERQ_Rtotal = sum(M1_ERQ_1, M1_ERQ_3, M1_ERQ_5, M1_ERQ_7, M1_ERQ_8, M1_ERQ_10, na.rm = TRUE)) %>% 
  mutate(D_M1_PHQ_total = sum(M1_PHQ_1, M1_PHQ_2, M1_PHQ_3, M1_PHQ_4, M1_PHQ_5, M1_PHQ_6, M1_PHQ_7, M1_PHQ_8, na.rm = TRUE)) %>% 
  mutate(D_M1_GAD_total = sum(M1_GAD_1, M1_GAD_2, M1_GAD_3, M1_GAD_4, M1_GAD_5, M1_GAD_6, M1_GAD_7, na.rm = TRUE)) %>% 
  ungroup()
## New names:
## Rows: 259 Columns: 207
## ── Column specification
## ──────────────────────────────────────────────────────── Delimiter: "," chr
## (2): Prolific_ID, Group dbl (205): ...1, ID, B_IUS_1, B_IUS_2, B_IUS_3,
## B_IUS_4, B_IUS_5, B_IUS_6, B...
## ℹ Use `spec()` to retrieve the full column specification for this data. ℹ
## Specify the column types or set `show_col_types = FALSE` to quiet this message.
## • `` -> `...1`

Calculating mood means

Full_data_all <- mutate(Full_data_all_t, A_PRE_mood_mean = rowMeans(dplyr::select(Full_data_all_t, c(B_distressed_pleasant, B_anxious_relaxed)), na.rm = TRUE)) %>% 
  mutate(Full_data_all_t, B_POST_mood_mean = rowMeans(dplyr::select(Full_data_all_t, c(POST_distressed_pleasant, POST_anxious_relaxed)), na.rm = TRUE)) %>%
  mutate(Full_data_all_t, C_W1_mood_mean = rowMeans(dplyr::select(Full_data_all_t, c(W1_distressed_pleasant, W1_anxious_relaxed)), na.rm = TRUE)) %>% 
 mutate(Full_data_all_t, D_M1_mood_mean = rowMeans(dplyr::select(Full_data_all_t, c(M1_distressed_pleasant, M1_anxious_relaxed)), na.rm = TRUE))

Hypothesis 1

H1a: IUS and Mood association at PRE

#Distressed
PRE_IUS_Distress_lm <- lm(A_PRE_IUS_total ~ B_distressed_pleasant, data = Full_data_all)
summary(PRE_IUS_Distress_lm)
## 
## Call:
## lm(formula = A_PRE_IUS_total ~ B_distressed_pleasant, data = Full_data_all)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -25.8365  -5.8426   0.4123   6.3128  20.1076 
## 
## Coefficients:
##                       Estimate Std. Error t value Pr(>|t|)    
## (Intercept)            44.3702     0.7218  61.471  < 2e-16 ***
## B_distressed_pleasant  -0.0559     0.0129  -4.334 2.11e-05 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 8.571 on 257 degrees of freedom
## Multiple R-squared:  0.0681, Adjusted R-squared:  0.06448 
## F-statistic: 18.78 on 1 and 257 DF,  p-value: 2.105e-05
anova(PRE_IUS_Distress_lm)
## Analysis of Variance Table
## 
## Response: A_PRE_IUS_total
##                        Df  Sum Sq Mean Sq F value    Pr(>F)    
## B_distressed_pleasant   1  1379.6 1379.58  18.781 2.105e-05 ***
## Residuals             257 18878.1   73.46                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#Anxious
PRE_IUS_Anxiety_lm <- lm(A_PRE_IUS_total ~ B_anxious_relaxed, data = Full_data_all)
summary(PRE_IUS_Anxiety_lm)
## 
## Call:
## lm(formula = A_PRE_IUS_total ~ B_anxious_relaxed, data = Full_data_all)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -26.2289  -5.7679   0.5456   5.9105  20.4901 
## 
## Coefficients:
##                   Estimate Std. Error t value Pr(>|t|)    
## (Intercept)       44.00514    0.61670  71.355  < 2e-16 ***
## B_anxious_relaxed -0.05551    0.01021  -5.437 1.26e-07 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 8.416 on 256 degrees of freedom
##   (1 observation deleted due to missingness)
## Multiple R-squared:  0.1035, Adjusted R-squared:    0.1 
## F-statistic: 29.56 on 1 and 256 DF,  p-value: 1.262e-07
anova(PRE_IUS_Anxiety_lm)
## Analysis of Variance Table
## 
## Response: A_PRE_IUS_total
##                    Df  Sum Sq Mean Sq F value    Pr(>F)    
## B_anxious_relaxed   1  2093.8 2093.83  29.564 1.262e-07 ***
## Residuals         256 18130.7   70.82                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#Combined
PRE_IUS_mood_lm <- lm(A_PRE_IUS_total ~ A_PRE_mood_mean, data = Full_data_all)
summary(PRE_IUS_mood_lm)
## 
## Call:
## lm(formula = A_PRE_IUS_total ~ A_PRE_mood_mean, data = Full_data_all)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -25.2840  -6.0303   0.1752   6.0332  20.9727 
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)    
## (Intercept)     44.57405    0.67547  65.989  < 2e-16 ***
## A_PRE_mood_mean -0.06646    0.01228  -5.412 1.43e-07 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 8.412 on 257 degrees of freedom
## Multiple R-squared:  0.1023, Adjusted R-squared:  0.0988 
## F-statistic: 29.29 on 1 and 257 DF,  p-value: 1.431e-07
anova(PRE_IUS_mood_lm)
## Analysis of Variance Table
## 
## Response: A_PRE_IUS_total
##                  Df  Sum Sq Mean Sq F value    Pr(>F)    
## A_PRE_mood_mean   1  2072.2 2072.24  29.285 1.431e-07 ***
## Residuals       257 18185.4   70.76                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

H1a: IUS and mental health association at PRE

#Depression
PRE_IUS_PHQ_lm <- lm(A_PRE_IUS_total ~ A_PRE_PHQ_total, data = Full_data_all)
summary(PRE_IUS_PHQ_lm)
## 
## Call:
## lm(formula = A_PRE_IUS_total ~ A_PRE_PHQ_total, data = Full_data_all)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -28.943  -4.553   0.081   4.910  22.117 
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)    
## (Intercept)      30.1756     1.5954  18.914  < 2e-16 ***
## A_PRE_PHQ_total   0.6707     0.0842   7.965 5.36e-14 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 7.951 on 257 degrees of freedom
## Multiple R-squared:  0.198,  Adjusted R-squared:  0.1949 
## F-statistic: 63.44 on 1 and 257 DF,  p-value: 5.356e-14
anova(PRE_IUS_PHQ_lm)
## Analysis of Variance Table
## 
## Response: A_PRE_IUS_total
##                  Df  Sum Sq Mean Sq F value    Pr(>F)    
## A_PRE_PHQ_total   1  4010.8  4010.8  63.444 5.356e-14 ***
## Residuals       257 16246.9    63.2                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#Anxiety
PRE_IUS_GAD_lm <- lm(A_PRE_IUS_total ~ A_PRE_GAD_total,  data = Full_data_all)
summary(PRE_IUS_GAD_lm)
## 
## Call:
## lm(formula = A_PRE_IUS_total ~ A_PRE_GAD_total, data = Full_data_all)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -25.3319  -4.8319   0.7045   4.1681  20.6317 
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)    
## (Intercept)     29.26836    1.43778  20.357   <2e-16 ***
## A_PRE_GAD_total  0.82727    0.08645   9.569   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 7.623 on 257 degrees of freedom
## Multiple R-squared:  0.2627, Adjusted R-squared:  0.2598 
## F-statistic: 91.57 on 1 and 257 DF,  p-value: < 2.2e-16
anova(PRE_IUS_GAD_lm)
## Analysis of Variance Table
## 
## Response: A_PRE_IUS_total
##                  Df  Sum Sq Mean Sq F value    Pr(>F)    
## A_PRE_GAD_total   1  5321.7  5321.7   91.57 < 2.2e-16 ***
## Residuals       257 14935.9    58.1                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

H1b: IUS and BT at PRE

Hypothesis 2 - Grouped

Grouping the modules vs the extra controls

Full_data_all$Group[which(Full_data_all$Group == "C_Intervention")]<-1
Full_data_all$Group[which(Full_data_all$Group == "B_Controls")]<-1
Full_data_all$Group[which(Full_data_all$Group == "A_ECs")]<-0

H2a: difference in change in cognitive IUS over time between groups

IUS_alltimepoints <- Full_data_all %>% 
  dplyr::select("ID", "Group", "A_PRE_IUS_total", "B_POST_IUS_total", "C_W1_IUS_total", "D_M1_IUS_total")
## Formatting table as needed
IUS_alltimepoints_long <- IUS_alltimepoints %>%
  pivot_longer(cols = c(A_PRE_IUS_total, B_POST_IUS_total, C_W1_IUS_total, D_M1_IUS_total),
               names_to = "Time",
               values_to = "IUS_Score")
IUS_MEM <- lmer(IUS_Score ~ Group * Time + (1|ID), data = IUS_alltimepoints_long, REML = TRUE)
summary(IUS_MEM)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: IUS_Score ~ Group * Time + (1 | ID)
##    Data: IUS_alltimepoints_long
## 
## REML criterion at convergence: 7823.8
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -4.4183 -0.3355  0.0620  0.4953  2.3068 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  ID       (Intercept) 72.54    8.517   
##  Residual             77.24    8.788   
## Number of obs: 1036, groups:  ID, 259
## 
## Fixed effects:
##                             Estimate Std. Error      df t value Pr(>|t|)    
## (Intercept)                   41.080      1.731 603.380  23.735   <2e-16 ***
## Group1                         1.461      1.927 603.380   0.758   0.4487    
## TimeB_POST_IUS_total          -0.280      1.758 771.000  -0.159   0.8735    
## TimeC_W1_IUS_total            -0.720      1.758 771.000  -0.410   0.6822    
## TimeD_M1_IUS_total            -2.900      1.758 771.000  -1.650   0.0994 .  
## Group1:TimeB_POST_IUS_total   -5.131      1.957 771.000  -2.623   0.0089 ** 
## Group1:TimeC_W1_IUS_total     -3.237      1.957 771.000  -1.654   0.0985 .  
## Group1:TimeD_M1_IUS_total     -4.727      1.957 771.000  -2.416   0.0159 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) Group1 TB_POS TC_W1_ TD_M1_ G1:TB_ G1:TC_
## Group1      -0.898                                          
## TB_POST_IUS -0.508  0.456                                   
## TmC_W1_IUS_ -0.508  0.456  0.500                            
## TmD_M1_IUS_ -0.508  0.456  0.500  0.500                     
## G1:TB_POST_  0.456 -0.508 -0.898 -0.449 -0.449              
## G1:TC_W1_IU  0.456 -0.508 -0.449 -0.898 -0.449  0.500       
## G1:TD_M1_IU  0.456 -0.508 -0.449 -0.449 -0.898  0.500  0.500
anova  (IUS_MEM)
## Type III Analysis of Variance Table with Satterthwaite's method
##             Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
## Group       111.53  111.53     1   257  1.4440   0.23059    
## Time       2256.54  752.18     3   771  9.7386 2.596e-06 ***
## Group:Time  656.91  218.97     3   771  2.8350   0.03734 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
sjPlot::tab_model(IUS_MEM)
  IUS Score
Predictors Estimates CI p
(Intercept) 41.08 37.68 – 44.48 <0.001
Group [1] 1.46 -2.32 – 5.24 0.449
Time [B_POST_IUS_total] -0.28 -3.73 – 3.17 0.873
Time [C_W1_IUS_total] -0.72 -4.17 – 2.73 0.682
Time [D_M1_IUS_total] -2.90 -6.35 – 0.55 0.099
Group [1] × Time
[B_POST_IUS_total]
-5.13 -8.97 – -1.29 0.009
Group [1] × Time
[C_W1_IUS_total]
-3.24 -7.08 – 0.60 0.098
Group [1] × Time
[D_M1_IUS_total]
-4.73 -8.57 – -0.89 0.016
Random Effects
σ2 77.24
τ00 ID 72.54
ICC 0.48
N ID 259
Observations 1036
Marginal R2 / Conditional R2 0.045 / 0.507
parameters::standardise_parameters(IUS_MEM)
## # Standardization method: refit
## 
## Parameter                   | Std. Coef. |         95% CI
## ---------------------------------------------------------
## (Intercept)                 |       0.20 | [-0.08,  0.47]
## Group1                      |       0.12 | [-0.19,  0.42]
## TimeB_POST_IUS_total        |      -0.02 | [-0.30,  0.25]
## TimeC_W1_IUS_total          |      -0.06 | [-0.33,  0.22]
## TimeD_M1_IUS_total          |      -0.23 | [-0.51,  0.04]
## Group1:TimeB_POST_IUS_total |      -0.41 | [-0.72, -0.10]
## Group1:TimeC_W1_IUS_total   |      -0.26 | [-0.57,  0.05]
## Group1:TimeD_M1_IUS_total   |      -0.38 | [-0.69, -0.07]

Baseline to post

IUS_BP <- Full_data_all %>% 
  dplyr::select("ID", "Group", "A_PRE_IUS_total", "B_POST_IUS_total")
## Formatting table as needed
IUS_BP_long <- IUS_BP %>%
  pivot_longer(cols = c(A_PRE_IUS_total, B_POST_IUS_total),
               names_to = "Time",
               values_to = "IUS_Score")
IUS_MEM_BP <- lmer(IUS_Score ~ Group * Time + (1|ID), data = IUS_BP_long, REML = TRUE)
summary(IUS_MEM_BP)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: IUS_Score ~ Group * Time + (1 | ID)
##    Data: IUS_BP_long
## 
## REML criterion at convergence: 3669.9
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -4.3396 -0.4364  0.0214  0.4075  3.3019 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  ID       (Intercept) 70.86    8.418   
##  Residual             29.62    5.442   
## Number of obs: 518, groups:  ID, 259
## 
## Fixed effects:
##                             Estimate Std. Error      df t value Pr(>|t|)    
## (Intercept)                   41.080      1.418 343.274  28.978  < 2e-16 ***
## Group1                         1.461      1.578 343.274   0.926    0.355    
## TimeB_POST_IUS_total          -0.280      1.089 257.000  -0.257    0.797    
## Group1:TimeB_POST_IUS_total   -5.131      1.212 257.000  -4.235 3.19e-05 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) Group1 TB_POS
## Group1      -0.898              
## TB_POST_IUS -0.384  0.345       
## G1:TB_POST_  0.345 -0.384 -0.898
anova  (IUS_MEM_BP)
## Type III Analysis of Variance Table with Satterthwaite's method
##            Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
## Group       17.03   17.03     1   257  0.5751    0.4489    
## Time       653.49  653.49     1   257 22.0624 4.302e-06 ***
## Group:Time 531.22  531.22     1   257 17.9344 3.187e-05 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
sjPlot::tab_model(IUS_MEM_BP)
  IUS Score
Predictors Estimates CI p
(Intercept) 41.08 38.29 – 43.87 <0.001
Group [1] 1.46 -1.64 – 4.56 0.355
Time [B_POST_IUS_total] -0.28 -2.42 – 1.86 0.797
Group [1] × Time
[B_POST_IUS_total]
-5.13 -7.51 – -2.75 <0.001
Random Effects
σ2 29.62
τ00 ID 70.86
ICC 0.71
N ID 259
Observations 518
Marginal R2 / Conditional R2 0.057 / 0.722
parameters::standardise_parameters(IUS_MEM_BP)
## # Standardization method: refit
## 
## Parameter                   | Std. Coef. |         95% CI
## ---------------------------------------------------------
## (Intercept)                 |       0.10 | [-0.17,  0.37]
## Group1                      |       0.14 | [-0.16,  0.44]
## TimeB_POST_IUS_total        |      -0.03 | [-0.23,  0.18]
## Group1:TimeB_POST_IUS_total |      -0.50 | [-0.73, -0.27]
plot_model(IUS_MEM_BP, type = "int")

Baseline to 1W

IUS_B1W <- Full_data_all %>% 
  dplyr::select("ID", "Group", "A_PRE_IUS_total", "C_W1_IUS_total")
## Formatting table as needed
IUS_B1W_long <- IUS_B1W %>%
  pivot_longer(cols = c(A_PRE_IUS_total, C_W1_IUS_total),
               names_to = "Time",
               values_to = "IUS_Score")
IUS_MEM_B1W <- lmer(IUS_Score ~ Group * Time + (1|ID), data = IUS_B1W_long, REML = TRUE)
summary(IUS_MEM_B1W)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: IUS_Score ~ Group * Time + (1 | ID)
##    Data: IUS_B1W_long
## 
## REML criterion at convergence: 3756.7
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -3.9648 -0.3595  0.0595  0.4288  2.5626 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  ID       (Intercept) 68.94    8.303   
##  Residual             39.99    6.324   
## Number of obs: 518, groups:  ID, 259
## 
## Fixed effects:
##                           Estimate Std. Error      df t value Pr(>|t|)    
## (Intercept)                 41.080      1.476 367.008  27.831   <2e-16 ***
## Group1                       1.461      1.643 367.008   0.889   0.3746    
## TimeC_W1_IUS_total          -0.720      1.265 257.000  -0.569   0.5697    
## Group1:TimeC_W1_IUS_total   -3.237      1.408 257.000  -2.299   0.0223 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) Group1 TC_W1_
## Group1      -0.898              
## TmC_W1_IUS_ -0.428  0.385       
## G1:TC_W1_IU  0.385 -0.428 -0.898
anova  (IUS_MEM_B1W)
## Type III Analysis of Variance Table with Satterthwaite's method
##            Sum Sq Mean Sq NumDF DenDF F value   Pr(>F)   
## Group        0.45    0.45     1   257  0.0113 0.915439   
## Time       441.28  441.28     1   257 11.0337 0.001025 **
## Group:Time 211.38  211.38     1   257  5.2852 0.022310 * 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
sjPlot::tab_model(IUS_MEM_B1W)
  IUS Score
Predictors Estimates CI p
(Intercept) 41.08 38.18 – 43.98 <0.001
Group [1] 1.46 -1.77 – 4.69 0.374
Time [C_W1_IUS_total] -0.72 -3.20 – 1.76 0.569
Group [1] × Time
[C_W1_IUS_total]
-3.24 -6.00 – -0.47 0.022
Random Effects
σ2 39.99
τ00 ID 68.94
ICC 0.63
N ID 259
Observations 518
Marginal R2 / Conditional R2 0.028 / 0.643
parameters::standardise_parameters(IUS_MEM_B1W)
## # Standardization method: refit
## 
## Parameter                 | Std. Coef. |         95% CI
## -------------------------------------------------------
## (Intercept)               |       0.05 | [-0.23,  0.32]
## Group1                    |       0.14 | [-0.17,  0.44]
## TimeC_W1_IUS_total        |      -0.07 | [-0.30,  0.17]
## Group1:TimeC_W1_IUS_total |      -0.31 | [-0.57, -0.04]
plot_model(IUS_MEM_B1W, type = "int")

Baseline to 1M

IUS_B1M <- Full_data_all %>% 
  dplyr::select("ID", "Group", "A_PRE_IUS_total", "D_M1_IUS_total")
## Formatting table as needed
IUS_B1M_long <- IUS_B1M %>%
  pivot_longer(cols = c(A_PRE_IUS_total, D_M1_IUS_total),
               names_to = "Time",
               values_to = "IUS_Score")
IUS_MEM_B1M <- lmer(IUS_Score ~ Group * Time + (1|ID), data = IUS_B1M_long, REML = TRUE)
summary(IUS_MEM_B1M)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: IUS_Score ~ Group * Time + (1 | ID)
##    Data: IUS_B1M_long
## 
## REML criterion at convergence: 4079
## 
## Scaled residuals: 
##      Min       1Q   Median       3Q      Max 
## -2.92290 -0.36731  0.08071  0.53869  1.81932 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  ID       (Intercept)  59.19    7.693  
##  Residual             109.45   10.462  
## Number of obs: 518, groups:  ID, 259
## 
## Fixed effects:
##                           Estimate Std. Error      df t value Pr(>|t|)    
## (Intercept)                 41.080      1.836 457.626  22.369   <2e-16 ***
## Group1                       1.461      2.044 457.626   0.714   0.4753    
## TimeD_M1_IUS_total          -2.900      2.092 257.000  -1.386   0.1669    
## Group1:TimeD_M1_IUS_total   -4.727      2.329 257.000  -2.029   0.0435 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) Group1 TD_M1_
## Group1      -0.898              
## TmD_M1_IUS_ -0.570  0.512       
## G1:TD_M1_IU  0.512 -0.570 -0.898
anova  (IUS_MEM_B1M)
## Type III Analysis of Variance Table with Satterthwaite's method
##             Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
## Group        31.59   31.59     1   257  0.2886   0.59155    
## Time       2235.52 2235.52     1   257 20.4257 9.464e-06 ***
## Group:Time  450.73  450.73     1   257  4.1183   0.04345 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
sjPlot::tab_model(IUS_MEM_B1M)
  IUS Score
Predictors Estimates CI p
(Intercept) 41.08 37.47 – 44.69 <0.001
Group [1] 1.46 -2.56 – 5.48 0.475
Time [D_M1_IUS_total] -2.90 -7.01 – 1.21 0.166
Group [1] × Time
[D_M1_IUS_total]
-4.73 -9.30 – -0.15 0.043
Random Effects
σ2 109.45
τ00 ID 59.19
ICC 0.35
N ID 259
Observations 518
Marginal R2 / Conditional R2 0.068 / 0.395
parameters::standardise_parameters(IUS_MEM_B1M)
## # Standardization method: refit
## 
## Parameter                 | Std. Coef. |         95% CI
## -------------------------------------------------------
## (Intercept)               |       0.16 | [-0.11,  0.43]
## Group1                    |       0.11 | [-0.19,  0.41]
## TimeD_M1_IUS_total        |      -0.22 | [-0.52,  0.09]
## Group1:TimeD_M1_IUS_total |      -0.35 | [-0.69, -0.01]
plot_model(IUS_MEM_B1M, type = "int")

H2a: difference in change in growth mindsets over time between groups

GM_alltimepoints <- Full_data_all %>% 
  dplyr::select("ID", "Group", "A_PRE_GM", "B_POST_GM", "C_W1_GM", "D_M1_GM")
## Formatting table as needed
GM_alltimepoints_long <- GM_alltimepoints %>%
  pivot_longer(cols = c(A_PRE_GM, B_POST_GM, C_W1_GM, D_M1_GM),
               names_to = "Time",
               values_to = "GM_Score")
GM_MEM <- lmer(GM_Score ~ Group * Time + (1|ID), data = GM_alltimepoints_long, REML = TRUE)
summary(GM_MEM)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: GM_Score ~ Group * Time + (1 | ID)
##    Data: GM_alltimepoints_long
## 
## REML criterion at convergence: 3111.8
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -3.0685 -0.5136 -0.0799  0.4400  3.7636 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  ID       (Intercept) 1.3393   1.1573  
##  Residual             0.7765   0.8812  
## Number of obs: 996, groups:  ID, 259
## 
## Fixed effects:
##                      Estimate Std. Error       df t value Pr(>|t|)    
## (Intercept)            2.7400     0.2057 461.0841  13.320  < 2e-16 ***
## Group1                 0.2839     0.2290 461.0841   1.240  0.21567    
## TimeB_POST_GM          0.0400     0.1762 731.3450   0.227  0.82052    
## TimeC_W1_GM           -0.0759     0.1786 732.8977  -0.425  0.67096    
## TimeD_M1_GM           -0.0398     0.1838 736.1440  -0.217  0.82860    
## Group1:TimeB_POST_GM  -0.6192     0.1963 731.4161  -3.154  0.00167 ** 
## Group1:TimeC_W1_GM    -0.3733     0.1986 732.8407  -1.879  0.06058 .  
## Group1:TimeD_M1_GM    -0.4680     0.2046 736.1991  -2.288  0.02243 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) Group1 TB_POS TC_W1_ TD_M1_ G1:TB_ G1:TC_
## Group1      -0.898                                          
## TmB_POST_GM -0.428  0.385                                   
## TimeC_W1_GM -0.423  0.380  0.493                            
## TimeD_M1_GM -0.411  0.369  0.480  0.472                     
## G1:TB_POST_  0.385 -0.428 -0.898 -0.443 -0.430              
## G1:TC_W1_GM  0.380 -0.423 -0.444 -0.899 -0.425  0.494       
## G1:TD_M1_GM  0.369 -0.411 -0.431 -0.424 -0.898  0.479  0.473
anova  (GM_MEM)
## Type III Analysis of Variance Table with Satterthwaite's method
##            Sum Sq Mean Sq NumDF  DenDF F value  Pr(>F)  
## Group      0.1338 0.13378     1 257.46  0.1723 0.67844  
## Time       8.5844 2.86148     3 734.47  3.6849 0.01184 *
## Group:Time 8.3416 2.78052     3 734.47  3.5806 0.01364 *
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
sjPlot::tab_model(GM_MEM)
  GM Score
Predictors Estimates CI p
(Intercept) 2.74 2.34 – 3.14 <0.001
Group [1] 0.28 -0.17 – 0.73 0.215
Time [B_POST_GM] 0.04 -0.31 – 0.39 0.821
Time [C_W1_GM] -0.08 -0.43 – 0.27 0.671
Time [D_M1_GM] -0.04 -0.40 – 0.32 0.829
Group [1] × Time
[B_POST_GM]
-0.62 -1.00 – -0.23 0.002
Group [1] × Time
[C_W1_GM]
-0.37 -0.76 – 0.02 0.060
Group [1] × Time
[D_M1_GM]
-0.47 -0.87 – -0.07 0.022
Random Effects
σ2 0.78
τ00 ID 1.34
ICC 0.63
N ID 259
Observations 996
Marginal R2 / Conditional R2 0.020 / 0.640
parameters::standardise_parameters(GM_MEM)
## # Standardization method: refit
## 
## Parameter            | Std. Coef. |         95% CI
## --------------------------------------------------
## (Intercept)          |       0.05 | [-0.22,  0.33]
## Group1               |       0.19 | [-0.11,  0.50]
## TimeB_POST_GM        |       0.03 | [-0.21,  0.26]
## TimeC_W1_GM          |      -0.05 | [-0.29,  0.19]
## TimeD_M1_GM          |      -0.03 | [-0.27,  0.22]
## Group1:TimeB_POST_GM |      -0.42 | [-0.69, -0.16]
## Group1:TimeC_W1_GM   |      -0.25 | [-0.52,  0.01]
## Group1:TimeD_M1_GM   |      -0.32 | [-0.59, -0.05]

Baseline to post

GM_BP <- Full_data_all %>% 
  dplyr::select("ID", "Group", "A_PRE_GM", "B_POST_GM")
## Formatting table as needed
GM_BP_long <- GM_BP %>%
  pivot_longer(cols = c(A_PRE_GM, B_POST_GM),
               names_to = "Time",
               values_to = "GM_Score")
GM_MEM_BP <- lmer(GM_Score ~ Group * Time + (1|ID), data = GM_BP_long, REML = TRUE)
summary(GM_MEM_BP)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: GM_Score ~ Group * Time + (1 | ID)
##    Data: GM_BP_long
## 
## REML criterion at convergence: 1674.9
## 
## Scaled residuals: 
##      Min       1Q   Median       3Q      Max 
## -2.64644 -0.53252 -0.00609  0.43121  2.98242 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  ID       (Intercept) 1.4862   1.2191  
##  Residual             0.6154   0.7844  
## Number of obs: 516, groups:  ID, 259
## 
## Fixed effects:
##                      Estimate Std. Error       df t value Pr(>|t|)    
## (Intercept)            2.7400     0.2050 342.4179  13.365  < 2e-16 ***
## Group1                 0.2839     0.2282 342.4179   1.244 0.214326    
## TimeB_POST_GM          0.0400     0.1569 255.5424   0.255 0.798961    
## Group1:TimeB_POST_GM  -0.6245     0.1748 255.6612  -3.573 0.000422 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) Group1 TB_POS
## Group1      -0.898              
## TmB_POST_GM -0.383  0.344       
## G1:TB_POST_  0.343 -0.382 -0.898
anova  (GM_MEM_BP)
## Type III Analysis of Variance Table with Satterthwaite's method
##            Sum Sq Mean Sq NumDF  DenDF F value    Pr(>F)    
## Group      0.0111  0.0111     1 257.08  0.0180 0.8933019    
## Time       5.9710  5.9710     1 255.66  9.7034 0.0020489 ** 
## Group:Time 7.8546  7.8546     1 255.66 12.7644 0.0004221 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
sjPlot::tab_model(GM_MEM_BP)
  GM Score
Predictors Estimates CI p
(Intercept) 2.74 2.34 – 3.14 <0.001
Group [1] 0.28 -0.16 – 0.73 0.214
Time [B_POST_GM] 0.04 -0.27 – 0.35 0.799
Group [1] × Time
[B_POST_GM]
-0.62 -0.97 – -0.28 <0.001
Random Effects
σ2 0.62
τ00 ID 1.49
ICC 0.71
N ID 259
Observations 516
Marginal R2 / Conditional R2 0.032 / 0.717
parameters::standardise_parameters(GM_MEM_BP)
## # Standardization method: refit
## 
## Parameter            | Std. Coef. |         95% CI
## --------------------------------------------------
## (Intercept)          |   1.11e-03 | [-0.27,  0.28]
## Group1               |       0.19 | [-0.11,  0.50]
## TimeB_POST_GM        |       0.03 | [-0.18,  0.24]
## Group1:TimeB_POST_GM |      -0.42 | [-0.66, -0.19]
plot_model(GM_MEM_BP, type = "int")

Baseline to 1W

GM_B1W <- Full_data_all %>% 
  dplyr::select("ID", "Group", "A_PRE_GM", "C_W1_GM")
## Formatting table as needed
GM_B1W_long <- GM_B1W %>%
  pivot_longer(cols = c(A_PRE_GM, C_W1_GM),
               names_to = "Time",
               values_to = "GM_Score")
GM_MEM_B1W <- lmer(GM_Score ~ Group * Time + (1|ID), data = GM_B1W_long, REML = TRUE)
summary(GM_MEM_B1W)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: GM_Score ~ Group * Time + (1 | ID)
##    Data: GM_B1W_long
## 
## REML criterion at convergence: 1751
## 
## Scaled residuals: 
##      Min       1Q   Median       3Q      Max 
## -2.26286 -0.50692 -0.04646  0.49859  2.77796 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  ID       (Intercept) 1.056    1.027   
##  Residual             1.015    1.007   
## Number of obs: 511, groups:  ID, 259
## 
## Fixed effects:
##                     Estimate Std. Error        df t value Pr(>|t|)    
## (Intercept)          2.74000    0.20350 404.26949  13.464   <2e-16 ***
## Group1               0.28392    0.22654 404.26949   1.253    0.211    
## TimeC_W1_GM         -0.07843    0.20464 254.85261  -0.383    0.702    
## Group1:TimeC_W1_GM  -0.37245    0.22753 254.55771  -1.637    0.103    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) Group1 TC_W1_
## Group1      -0.898              
## TimeC_W1_GM -0.487  0.438       
## G1:TC_W1_GM  0.438 -0.488 -0.899
anova  (GM_MEM_B1W)
## Type III Analysis of Variance Table with Satterthwaite's method
##            Sum Sq Mean Sq NumDF  DenDF F value  Pr(>F)  
## Group      0.2477  0.2477     1 258.25  0.2441 0.62170  
## Time       5.4932  5.4932     1 254.56  5.4121 0.02078 *
## Group:Time 2.7198  2.7198     1 254.56  2.6797 0.10287  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
sjPlot::tab_model(GM_MEM_B1W)
  GM Score
Predictors Estimates CI p
(Intercept) 2.74 2.34 – 3.14 <0.001
Group [1] 0.28 -0.16 – 0.73 0.211
Time [C_W1_GM] -0.08 -0.48 – 0.32 0.702
Group [1] × Time
[C_W1_GM]
-0.37 -0.82 – 0.07 0.102
Random Effects
σ2 1.01
τ00 ID 1.06
ICC 0.51
N ID 259
Observations 511
Marginal R2 / Conditional R2 0.020 / 0.520
parameters::standardise_parameters(GM_MEM_B1W)
## # Standardization method: refit
## 
## Parameter          | Std. Coef. |        95% CI
## -----------------------------------------------
## (Intercept)        |      -0.03 | [-0.31, 0.24]
## Group1             |       0.20 | [-0.11, 0.50]
## TimeC_W1_GM        |      -0.05 | [-0.33, 0.22]
## Group1:TimeC_W1_GM |      -0.26 | [-0.57, 0.05]
plot_model(GM_MEM_B1W, type = "int")

Baseline to 1M

GM_B1M <- Full_data_all %>% 
  dplyr::select("ID", "Group", "A_PRE_GM", "D_M1_GM")
## Formatting table as needed
GM_B1M_long <- GM_B1M %>%
  pivot_longer(cols = c(A_PRE_GM, D_M1_GM),
               names_to = "Time",
               values_to = "GM_Score")
GM_MEM_B1M <- lmer(GM_Score ~ Group * Time + (1|ID), data = GM_B1M_long, REML = TRUE)
summary(GM_MEM_B1M)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: GM_Score ~ Group * Time + (1 | ID)
##    Data: GM_B1M_long
## 
## REML criterion at convergence: 1642.8
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -2.3896 -0.5692 -0.1152  0.4890  2.8604 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  ID       (Intercept) 1.1176   1.057   
##  Residual             0.8931   0.945   
## Number of obs: 487, groups:  ID, 259
## 
## Fixed effects:
##                     Estimate Std. Error        df t value Pr(>|t|)    
## (Intercept)          2.74000    0.20053 375.81950  13.664   <2e-16 ***
## Group1               0.28392    0.22323 375.81950   1.272    0.204    
## TimeD_M1_GM         -0.03848    0.19878 236.81456  -0.194    0.847    
## Group1:TimeD_M1_GM  -0.44800    0.22128 236.80802  -2.025    0.044 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) Group1 TD_M1_
## Group1      -0.898              
## TimeD_M1_GM -0.448  0.403       
## G1:TD_M1_GM  0.403 -0.448 -0.898
anova  (GM_MEM_B1M)
## Type III Analysis of Variance Table with Satterthwaite's method
##            Sum Sq Mean Sq NumDF  DenDF F value  Pr(>F)  
## Group      0.0803  0.0803     1 255.62  0.0899 0.76453  
## Time       5.0265  5.0265     1 236.81  5.6281 0.01847 *
## Group:Time 3.6608  3.6608     1 236.81  4.0990 0.04403 *
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
sjPlot::tab_model(GM_MEM_B1M)
  GM Score
Predictors Estimates CI p
(Intercept) 2.74 2.35 – 3.13 <0.001
Group [1] 0.28 -0.15 – 0.72 0.204
Time [D_M1_GM] -0.04 -0.43 – 0.35 0.847
Group [1] × Time
[D_M1_GM]
-0.45 -0.88 – -0.01 0.043
Random Effects
σ2 0.89
τ00 ID 1.12
ICC 0.56
N ID 259
Observations 487
Marginal R2 / Conditional R2 0.024 / 0.566
parameters::standardise_parameters(GM_MEM_B1M)
## # Standardization method: refit
## 
## Parameter          | Std. Coef. |         95% CI
## ------------------------------------------------
## (Intercept)        |      -0.03 | [-0.30,  0.25]
## Group1             |       0.20 | [-0.11,  0.51]
## TimeD_M1_GM        |      -0.03 | [-0.30,  0.25]
## Group1:TimeD_M1_GM |      -0.31 | [-0.62, -0.01]
plot_model(GM_MEM_B1M, type = "int")

H2b: difference in change in PHQ over time between groups

PHQ_alltimepoints <- Full_data_all %>% 
  dplyr::select("ID", "Group", "A_PRE_PHQ_total", "C_W1_PHQ_total", "D_M1_PHQ_total")
## Formatting table as needed
PHQ_alltimepoints_long <- PHQ_alltimepoints %>%
  pivot_longer(cols = c(A_PRE_PHQ_total, C_W1_PHQ_total, D_M1_PHQ_total),
               names_to = "Time",
               values_to = "PHQ_Score")
PHQ_MEM <- lmer(PHQ_Score ~ Group * Time + (1|ID), data = PHQ_alltimepoints_long, REML = TRUE)
summary(PHQ_MEM)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: PHQ_Score ~ Group * Time + (1 | ID)
##    Data: PHQ_alltimepoints_long
## 
## REML criterion at convergence: 5056.7
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -3.2413 -0.4385 -0.0231  0.4805  2.5039 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  ID       (Intercept) 20.64    4.543   
##  Residual             26.70    5.168   
## Number of obs: 777, groups:  ID, 259
## 
## Fixed effects:
##                            Estimate Std. Error        df t value Pr(>|t|)    
## (Intercept)                17.96000    0.97310 558.62200  18.456   <2e-16 ***
## Group1                      0.06871    1.08327 558.62200   0.063   0.9494    
## TimeC_W1_PHQ_total         -0.76000    1.03351 514.00000  -0.735   0.4625    
## TimeD_M1_PHQ_total         -2.18000    1.03351 514.00000  -2.109   0.0354 *  
## Group1:TimeC_W1_PHQ_total  -0.89072    1.15051 514.00000  -0.774   0.4392    
## Group1:TimeD_M1_PHQ_total  -1.48029    1.15051 514.00000  -1.287   0.1988    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) Group1 TC_W1_ TD_M1_ G1:TC_
## Group1      -0.898                            
## TmC_W1_PHQ_ -0.531  0.477                     
## TmD_M1_PHQ_ -0.531  0.477  0.500              
## G1:TC_W1_PH  0.477 -0.531 -0.898 -0.449       
## G1:TD_M1_PH  0.477 -0.531 -0.449 -0.898  0.500
anova  (PHQ_MEM)
## Type III Analysis of Variance Table with Satterthwaite's method
##            Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
## Group       18.99   18.99     1   257  0.7112    0.3998    
## Time       695.09  347.54     2   514 13.0148 3.063e-06 ***
## Group:Time  44.82   22.41     2   514  0.8391    0.4327    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
sjPlot::tab_model(PHQ_MEM)
  PHQ Score
Predictors Estimates CI p
(Intercept) 17.96 16.05 – 19.87 <0.001
Group [1] 0.07 -2.06 – 2.20 0.949
Time [C_W1_PHQ_total] -0.76 -2.79 – 1.27 0.462
Time [D_M1_PHQ_total] -2.18 -4.21 – -0.15 0.035
Group [1] × Time
[C_W1_PHQ_total]
-0.89 -3.15 – 1.37 0.439
Group [1] × Time
[D_M1_PHQ_total]
-1.48 -3.74 – 0.78 0.199
Random Effects
σ2 26.70
τ00 ID 20.64
ICC 0.44
N ID 259
Observations 777
Marginal R2 / Conditional R2 0.041 / 0.459
parameters::standardise_parameters(PHQ_MEM)
## # Standardization method: refit
## 
## Parameter                 | Std. Coef. |         95% CI
## -------------------------------------------------------
## (Intercept)               |       0.22 | [-0.05,  0.50]
## Group1                    |   9.81e-03 | [-0.29,  0.31]
## TimeC_W1_PHQ_total        |      -0.11 | [-0.40,  0.18]
## TimeD_M1_PHQ_total        |      -0.31 | [-0.60, -0.02]
## Group1:TimeC_W1_PHQ_total |      -0.13 | [-0.45,  0.20]
## Group1:TimeD_M1_PHQ_total |      -0.21 | [-0.53,  0.11]

Baseline to 1W

PHQ_B1W <- Full_data_all %>% 
  dplyr::select("ID", "Group", "A_PRE_PHQ_total", "C_W1_PHQ_total")
## Formatting table as needed
PHQ_B1W_long <- PHQ_B1W %>%
  pivot_longer(cols = c(A_PRE_PHQ_total, C_W1_PHQ_total),
               names_to = "Time",
               values_to = "PHQ_Score")
PHQ_MEM_B1W <- lmer(PHQ_Score ~ Group * Time + (1|ID), data = PHQ_B1W_long, REML = TRUE)
summary(PHQ_MEM_B1W)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: PHQ_Score ~ Group * Time + (1 | ID)
##    Data: PHQ_B1W_long
## 
## REML criterion at convergence: 3218.3
## 
## Scaled residuals: 
##      Min       1Q   Median       3Q      Max 
## -3.11171 -0.47607 -0.00757  0.42144  2.76000 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  ID       (Intercept) 25.26    5.026   
##  Residual             13.64    3.694   
## Number of obs: 518, groups:  ID, 259
## 
## Fixed effects:
##                            Estimate Std. Error        df t value Pr(>|t|)    
## (Intercept)                17.96000    0.88209 361.56212  20.361   <2e-16 ***
## Group1                      0.06871    0.98195 361.56212   0.070    0.944    
## TimeC_W1_PHQ_total         -0.76000    0.73873 257.00000  -1.029    0.305    
## Group1:TimeC_W1_PHQ_total  -0.89072    0.82237 257.00000  -1.083    0.280    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) Group1 TC_W1_
## Group1      -0.898              
## TmC_W1_PHQ_ -0.419  0.376       
## G1:TC_W1_PH  0.376 -0.419 -0.898
anova  (PHQ_MEM_B1W)
## Type III Analysis of Variance Table with Satterthwaite's method
##             Sum Sq Mean Sq NumDF DenDF F value   Pr(>F)   
## Group        2.434   2.434     1   257  0.1784 0.673096   
## Time       117.241 117.241     1   257  8.5933 0.003678 **
## Group:Time  16.005  16.005     1   257  1.1731 0.279772   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
sjPlot::tab_model(PHQ_MEM_B1W)
  PHQ Score
Predictors Estimates CI p
(Intercept) 17.96 16.23 – 19.69 <0.001
Group [1] 0.07 -1.86 – 2.00 0.944
Time [C_W1_PHQ_total] -0.76 -2.21 – 0.69 0.304
Group [1] × Time
[C_W1_PHQ_total]
-0.89 -2.51 – 0.72 0.279
Random Effects
σ2 13.64
τ00 ID 25.26
ICC 0.65
N ID 259
Observations 518
Marginal R2 / Conditional R2 0.015 / 0.655
parameters::standardise_parameters(PHQ_MEM_B1W)
## # Standardization method: refit
## 
## Parameter                 | Std. Coef. |        95% CI
## ------------------------------------------------------
## (Intercept)               |       0.11 | [-0.17, 0.39]
## Group1                    |       0.01 | [-0.30, 0.32]
## TimeC_W1_PHQ_total        |      -0.12 | [-0.35, 0.11]
## Group1:TimeC_W1_PHQ_total |      -0.14 | [-0.40, 0.12]
plot_model(PHQ_MEM_B1W, type = "int")

Baseline to 1M

PHQ_B1M <- Full_data_all %>% 
  dplyr::select("ID", "Group", "A_PRE_PHQ_total", "D_M1_PHQ_total")
## Formatting table as needed
PHQ_B1M_long <- PHQ_B1M %>%
  pivot_longer(cols = c(A_PRE_PHQ_total, D_M1_PHQ_total),
               names_to = "Time",
               values_to = "PHQ_Score")
PHQ_MEM_B1M <- lmer(PHQ_Score ~ Group * Time + (1|ID), data = PHQ_B1M_long, REML = TRUE)
summary(PHQ_MEM_B1M)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: PHQ_Score ~ Group * Time + (1 | ID)
##    Data: PHQ_B1M_long
## 
## REML criterion at convergence: 3448.2
## 
## Scaled residuals: 
##      Min       1Q   Median       3Q      Max 
## -2.38625 -0.49407 -0.02521  0.56273  2.24334 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  ID       (Intercept) 17.45    4.178   
##  Residual             32.01    5.658   
## Number of obs: 518, groups:  ID, 259
## 
## Fixed effects:
##                            Estimate Std. Error        df t value Pr(>|t|)    
## (Intercept)                17.96000    0.99460 457.08843  18.058   <2e-16 ***
## Group1                      0.06871    1.10719 457.08843   0.062   0.9505    
## TimeD_M1_PHQ_total         -2.18000    1.13152 257.00000  -1.927   0.0551 .  
## Group1:TimeD_M1_PHQ_total  -1.48029    1.25962 257.00000  -1.175   0.2410    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) Group1 TD_M1_
## Group1      -0.898              
## TmD_M1_PHQ_ -0.569  0.511       
## G1:TD_M1_PH  0.511 -0.569 -0.898
anova  (PHQ_MEM_B1M)
## Type III Analysis of Variance Table with Satterthwaite's method
##            Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
## Group       17.40   17.40     1   257  0.5437    0.4616    
## Time       688.11  688.11     1   257 21.4977 5.642e-06 ***
## Group:Time  44.21   44.21     1   257  1.3811    0.2410    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
sjPlot::tab_model(PHQ_MEM_B1M)
  PHQ Score
Predictors Estimates CI p
(Intercept) 17.96 16.01 – 19.91 <0.001
Group [1] 0.07 -2.11 – 2.24 0.951
Time [D_M1_PHQ_total] -2.18 -4.40 – 0.04 0.055
Group [1] × Time
[D_M1_PHQ_total]
-1.48 -3.95 – 0.99 0.240
Random Effects
σ2 32.01
τ00 ID 17.45
ICC 0.35
N ID 259
Observations 518
Marginal R2 / Conditional R2 0.057 / 0.390
parameters::standardise_parameters(PHQ_MEM_B1M)
## # Standardization method: refit
## 
## Parameter                 | Std. Coef. |        95% CI
## ------------------------------------------------------
## (Intercept)               |       0.23 | [-0.04, 0.50]
## Group1                    |   9.51e-03 | [-0.29, 0.31]
## TimeD_M1_PHQ_total        |      -0.30 | [-0.61, 0.01]
## Group1:TimeD_M1_PHQ_total |      -0.20 | [-0.55, 0.14]
plot_model(PHQ_MEM_B1M, type = "int")

H2b: difference in change in GAD over time between groups

# Merging across timepoints
GAD_alltimepoints <- Full_data_all %>% 
  dplyr::select("ID", "Group", "A_PRE_GAD_total", "C_W1_GAD_total", "D_M1_GAD_total")
## Formatting table as needed
GAD_alltimepoints_long <- GAD_alltimepoints %>%
  pivot_longer(cols = c(A_PRE_GAD_total, C_W1_GAD_total, D_M1_GAD_total),
               names_to = "Time",
               values_to = "GAD_Score")
GAD_MEM <- lmer(GAD_Score ~ Group * Time + (1|ID), data = GAD_alltimepoints_long, REML = TRUE)
summary(GAD_MEM)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: GAD_Score ~ Group * Time + (1 | ID)
##    Data: GAD_alltimepoints_long
## 
## REML criterion at convergence: 4922.6
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -3.4069 -0.4713  0.0113  0.5207  3.2186 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  ID       (Intercept) 19.22    4.384   
##  Residual             21.74    4.662   
## Number of obs: 777, groups:  ID, 259
## 
## Fixed effects:
##                           Estimate Std. Error       df t value Pr(>|t|)    
## (Intercept)                15.0200     0.9051 535.2412  16.595   <2e-16 ***
## Group1                      0.8460     1.0075 535.2412   0.840   0.4015    
## TimeC_W1_GAD_total         -0.2600     0.9325 514.0000  -0.279   0.7805    
## TimeD_M1_GAD_total         -1.1400     0.9325 514.0000  -1.223   0.2221    
## Group1:TimeC_W1_GAD_total  -0.9840     1.0380 514.0000  -0.948   0.3436    
## Group1:TimeD_M1_GAD_total  -1.9174     1.0380 514.0000  -1.847   0.0653 .  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) Group1 TC_W1_ TD_M1_ G1:TC_
## Group1      -0.898                            
## TmC_W1_GAD_ -0.515  0.463                     
## TmD_M1_GAD_ -0.515  0.463  0.500              
## G1:TC_W1_GA  0.463 -0.515 -0.898 -0.449       
## G1:TD_M1_GA  0.463 -0.515 -0.449 -0.898  0.500
anova  (GAD_MEM)
## Type III Analysis of Variance Table with Satterthwaite's method
##            Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
## Group        0.49   0.486     1   257  0.0224 0.8812451    
## Time       364.94 182.470     2   514  8.3944 0.0002586 ***
## Group:Time  74.19  37.093     2   514  1.7064 0.1825383    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
sjPlot::tab_model(GAD_MEM)
  GAD Score
Predictors Estimates CI p
(Intercept) 15.02 13.24 – 16.80 <0.001
Group [1] 0.85 -1.13 – 2.82 0.401
Time [C_W1_GAD_total] -0.26 -2.09 – 1.57 0.780
Time [D_M1_GAD_total] -1.14 -2.97 – 0.69 0.222
Group [1] × Time
[C_W1_GAD_total]
-0.98 -3.02 – 1.05 0.343
Group [1] × Time
[D_M1_GAD_total]
-1.92 -3.96 – 0.12 0.065
Random Effects
σ2 21.74
τ00 ID 19.22
ICC 0.47
N ID 259
Observations 777
Marginal R2 / Conditional R2 0.031 / 0.486
parameters::standardise_parameters(GAD_MEM)
## # Standardization method: refit
## 
## Parameter                 | Std. Coef. |        95% CI
## ------------------------------------------------------
## (Intercept)               |       0.09 | [-0.19, 0.36]
## Group1                    |       0.13 | [-0.17, 0.44]
## TimeC_W1_GAD_total        |      -0.04 | [-0.32, 0.24]
## TimeD_M1_GAD_total        |      -0.18 | [-0.46, 0.11]
## Group1:TimeC_W1_GAD_total |      -0.15 | [-0.47, 0.16]
## Group1:TimeD_M1_GAD_total |      -0.30 | [-0.61, 0.02]

Baseline to 1W

# Merging across timepoints
GAD_B1W <- Full_data_all %>% 
  dplyr::select("ID", "Group", "A_PRE_GAD_total", "C_W1_GAD_total")
## Formatting table as needed
GAD_B1W_long <- GAD_B1W %>%
  pivot_longer(cols = c(A_PRE_GAD_total, C_W1_GAD_total),
               names_to = "Time",
               values_to = "GAD_Score")
GAD_MEM_B1W <- lmer(GAD_Score ~ Group * Time + (1|ID), data = GAD_B1W_long, REML = TRUE)
summary(GAD_MEM_B1W)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: GAD_Score ~ Group * Time + (1 | ID)
##    Data: GAD_B1W_long
## 
## REML criterion at convergence: 3160
## 
## Scaled residuals: 
##      Min       1Q   Median       3Q      Max 
## -2.99946 -0.45651 -0.06523  0.46192  2.78438 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  ID       (Intercept) 22.27    4.720   
##  Residual             12.28    3.504   
## Number of obs: 518, groups:  ID, 259
## 
## Fixed effects:
##                           Estimate Std. Error       df t value Pr(>|t|)    
## (Intercept)                15.0200     0.8313 363.1154  18.067   <2e-16 ***
## Group1                      0.8460     0.9254 363.1154   0.914    0.361    
## TimeC_W1_GAD_total         -0.2600     0.7009 257.0000  -0.371    0.711    
## Group1:TimeC_W1_GAD_total  -0.9840     0.7802 257.0000  -1.261    0.208    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) Group1 TC_W1_
## Group1      -0.898              
## TmC_W1_GAD_ -0.422  0.379       
## G1:TC_W1_GA  0.379 -0.422 -0.898
anova  (GAD_MEM_B1W)
## Type III Analysis of Variance Table with Satterthwaite's method
##            Sum Sq Mean Sq NumDF DenDF F value  Pr(>F)  
## Group       2.185   2.185     1   257  0.1780 0.67349  
## Time       45.634  45.634     1   257  3.7160 0.05499 .
## Group:Time 19.534  19.534     1   257  1.5907 0.20838  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
sjPlot::tab_model(GAD_MEM_B1W)
  GAD Score
Predictors Estimates CI p
(Intercept) 15.02 13.39 – 16.65 <0.001
Group [1] 0.85 -0.97 – 2.66 0.361
Time [C_W1_GAD_total] -0.26 -1.64 – 1.12 0.711
Group [1] × Time
[C_W1_GAD_total]
-0.98 -2.52 – 0.55 0.208
Random Effects
σ2 12.28
τ00 ID 22.27
ICC 0.64
N ID 259
Observations 518
Marginal R2 / Conditional R2 0.010 / 0.648
parameters::standardise_parameters(GAD_MEM_B1W)
## # Standardization method: refit
## 
## Parameter                 | Std. Coef. |        95% CI
## ------------------------------------------------------
## (Intercept)               |      -0.03 | [-0.30, 0.25]
## Group1                    |       0.14 | [-0.17, 0.45]
## TimeC_W1_GAD_total        |      -0.04 | [-0.28, 0.19]
## Group1:TimeC_W1_GAD_total |      -0.17 | [-0.43, 0.09]
plot_model(GAD_MEM_B1W, type = "int")

Baseline to 1M

# Merging across timepoints
GAD_B1M <- Full_data_all %>% 
  dplyr::select("ID", "Group", "A_PRE_GAD_total", "D_M1_GAD_total")
## Formatting table as needed
GAD_B1M_long <- GAD_B1M %>%
  pivot_longer(cols = c(A_PRE_GAD_total, D_M1_GAD_total),
               names_to = "Time",
               values_to = "GAD_Score")
GAD_MEM_B1M <- lmer(GAD_Score ~ Group * Time + (1|ID), data = GAD_B1M_long, REML = TRUE)
summary(GAD_MEM_B1M)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: GAD_Score ~ Group * Time + (1 | ID)
##    Data: GAD_B1M_long
## 
## REML criterion at convergence: 3355.9
## 
## Scaled residuals: 
##      Min       1Q   Median       3Q      Max 
## -2.49057 -0.52258 -0.03535  0.56950  2.43187 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  ID       (Intercept) 16.28    4.035   
##  Residual             25.68    5.067   
## Number of obs: 518, groups:  ID, 259
## 
## Fixed effects:
##                           Estimate Std. Error      df t value Pr(>|t|)    
## (Intercept)                 15.020      0.916 446.740  16.397   <2e-16 ***
## Group1                       0.846      1.020 446.740   0.830   0.4072    
## TimeD_M1_GAD_total          -1.140      1.013 257.000  -1.125   0.2617    
## Group1:TimeD_M1_GAD_total   -1.917      1.128 257.000  -1.700   0.0904 .  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) Group1 TD_M1_
## Group1      -0.898              
## TmD_M1_GAD_ -0.553  0.497       
## G1:TD_M1_GA  0.497 -0.553 -0.898
anova  (GAD_MEM_B1M)
## Type III Analysis of Variance Table with Satterthwaite's method
##            Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
## Group        0.45    0.45     1   257  0.0176 0.8945808    
## Time       355.43  355.43     1   257 13.8429 0.0002441 ***
## Group:Time  74.17   74.17     1   257  2.8887 0.0904151 .  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
sjPlot::tab_model(GAD_MEM_B1M)
  GAD Score
Predictors Estimates CI p
(Intercept) 15.02 13.22 – 16.82 <0.001
Group [1] 0.85 -1.16 – 2.85 0.407
Time [D_M1_GAD_total] -1.14 -3.13 – 0.85 0.261
Group [1] × Time
[D_M1_GAD_total]
-1.92 -4.13 – 0.30 0.090
Random Effects
σ2 25.68
τ00 ID 16.28
ICC 0.39
N ID 259
Observations 518
Marginal R2 / Conditional R2 0.045 / 0.415
parameters::standardise_parameters(GAD_MEM_B1M)
## # Standardization method: refit
## 
## Parameter                 | Std. Coef. |        95% CI
## ------------------------------------------------------
## (Intercept)               |       0.10 | [-0.17, 0.37]
## Group1                    |       0.13 | [-0.18, 0.43]
## TimeD_M1_GAD_total        |      -0.17 | [-0.47, 0.13]
## Group1:TimeD_M1_GAD_total |      -0.29 | [-0.63, 0.05]
plot_model(GAD_MEM_B1M, type = "int")

H2b: difference in change in mood over time between groups

Mood_alltimepoints <- Full_data_all %>% 
  dplyr::select("ID", "Group", "A_PRE_mood_mean", "B_POST_mood_mean", "C_W1_mood_mean", "D_M1_mood_mean")
## Formatting tables as needed
Mood_alltimepoints_long <- Mood_alltimepoints %>%
  pivot_longer(cols = c("A_PRE_mood_mean", "B_POST_mood_mean", "C_W1_mood_mean", "D_M1_mood_mean"),
               names_to = "Time",
               values_to = "Mood_Score")
Mood_MEM <- lmer(Mood_Score ~ Group * Time + (1|ID), data = Mood_alltimepoints_long, REML = TRUE)
summary(Mood_MEM)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: Mood_Score ~ Group * Time + (1 | ID)
##    Data: Mood_alltimepoints_long
## 
## REML criterion at convergence: 10023.9
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -3.8645 -0.4742  0.0781  0.5690  3.4995 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  ID       (Intercept) 892.4    29.87   
##  Residual             983.4    31.36   
## Number of obs: 995, groups:  ID, 259
## 
## Fixed effects:
##                             Estimate Std. Error      df t value Pr(>|t|)    
## (Intercept)                   40.300      6.125 601.876   6.580 1.03e-10 ***
## Group1                        -6.771      6.818 601.876  -0.993 0.321063    
## TimeB_POST_mood_mean          -0.020      6.272 732.226  -0.003 0.997456    
## TimeC_W1_mood_mean           -14.945      6.353 734.727  -2.353 0.018906 *  
## TimeD_M1_mood_mean           -21.094      6.582 741.330  -3.205 0.001408 ** 
## Group1:TimeB_POST_mood_mean   24.652      6.984 732.283   3.530 0.000442 ***
## Group1:TimeC_W1_mood_mean      9.316      7.069 734.688   1.318 0.187972    
## Group1:TimeD_M1_mood_mean     14.396      7.314 741.041   1.968 0.049393 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) Group1 TB_POS TC_W1_ TD_M1_ G1:TB_ G1:TC_
## Group1      -0.898                                          
## TmB_POST_m_ -0.512  0.460                                   
## TmC_W1_md_m -0.505  0.454  0.494                            
## TmD_M1_md_m -0.488  0.438  0.476  0.469                     
## G1:TB_POST_  0.460 -0.512 -0.898 -0.443 -0.428              
## Gr1:TC_W1__  0.454 -0.506 -0.444 -0.899 -0.422  0.494       
## Gr1:TD_M1__  0.439 -0.489 -0.429 -0.422 -0.900  0.477  0.471
anova  (Mood_MEM)
## Type III Analysis of Variance Table with Satterthwaite's method
##            Sum Sq Mean Sq NumDF  DenDF F value    Pr(>F)    
## Group         974   973.6     1 259.89  0.9901   0.32065    
## Time        63239 21079.7     3 737.76 21.4363 2.546e-13 ***
## Group:Time  12731  4243.6     3 737.76  4.3154   0.00499 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
sjPlot::tab_model(Mood_MEM)
  Mood Score
Predictors Estimates CI p
(Intercept) 40.30 28.28 – 52.32 <0.001
Group [1] -6.77 -20.15 – 6.61 0.321
Time [B_POST_mood_mean] -0.02 -12.33 – 12.29 0.997
Time [C_W1_mood_mean] -14.94 -27.41 – -2.48 0.019
Time [D_M1_mood_mean] -21.09 -34.01 – -8.18 0.001
Group [1] × Time
[B_POST_mood_mean]
24.65 10.95 – 38.36 <0.001
Group [1] × Time
[C_W1_mood_mean]
9.32 -4.56 – 23.19 0.188
Group [1] × Time
[D_M1_mood_mean]
14.40 0.04 – 28.75 0.049
Random Effects
σ2 983.36
τ00 ID 892.40
ICC 0.48
N ID 259
Observations 995
Marginal R2 / Conditional R2 0.075 / 0.515
parameters::standardise_parameters(Mood_MEM)
## # Standardization method: refit
## 
## Parameter                   | Std. Coef. |         95% CI
## ---------------------------------------------------------
## (Intercept)                 |       0.10 | [-0.17,  0.36]
## Group1                      |      -0.15 | [-0.45,  0.15]
## TimeB_POST_mood_mean        |  -4.45e-04 | [-0.27,  0.27]
## TimeC_W1_mood_mean          |      -0.33 | [-0.61, -0.06]
## TimeD_M1_mood_mean          |      -0.47 | [-0.76, -0.18]
## Group1:TimeB_POST_mood_mean |       0.55 | [ 0.24,  0.85]
## Group1:TimeC_W1_mood_mean   |       0.21 | [-0.10,  0.52]
## Group1:TimeD_M1_mood_mean   |       0.32 | [ 0.00,  0.64]

Baseline to post

Mood_BP <- Full_data_all %>% 
  dplyr::select("ID", "Group", "A_PRE_mood_mean", "B_POST_mood_mean")
## Formatting tables as needed
Mood_BP_long <- Mood_BP %>%
  pivot_longer(cols = c("A_PRE_mood_mean", "B_POST_mood_mean"),
               names_to = "Time",
               values_to = "Mood_Score")
Mood_MEM_BP <- lmer(Mood_Score ~ Group * Time + (1|ID), data = Mood_BP_long, REML = TRUE)
summary(Mood_MEM_BP)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: Mood_Score ~ Group * Time + (1 | ID)
##    Data: Mood_BP_long
## 
## REML criterion at convergence: 5093.6
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -4.2507 -0.3943  0.0313  0.4499  3.4398 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  ID       (Intercept) 1028.6   32.07   
##  Residual              520.4   22.81   
## Number of obs: 517, groups:  ID, 259
## 
## Fixed effects:
##                             Estimate Std. Error      df t value Pr(>|t|)    
## (Intercept)                   40.300      5.566 356.438   7.241 2.77e-12 ***
## Group1                        -6.771      6.196 356.438  -1.093    0.275    
## TimeB_POST_mood_mean          -0.020      4.562 256.161  -0.004    0.997    
## Group1:TimeB_POST_mood_mean   24.582      5.081 256.227   4.838 2.27e-06 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) Group1 TB_POS
## Group1      -0.898              
## TmB_POST_m_ -0.410  0.368       
## G1:TB_POST_  0.368 -0.410 -0.898
anova  (Mood_MEM_BP)
## Type III Analysis of Variance Table with Satterthwaite's method
##             Sum Sq Mean Sq NumDF  DenDF F value    Pr(>F)    
## Group        496.3   496.3     1 256.89  0.9537    0.3297    
## Time       12141.7 12141.7     1 256.23 23.3309 2.349e-06 ***
## Group:Time 12181.3 12181.3     1 256.23 23.4070 2.266e-06 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
sjPlot::tab_model(Mood_MEM_BP)
  Mood Score
Predictors Estimates CI p
(Intercept) 40.30 29.37 – 51.23 <0.001
Group [1] -6.77 -18.94 – 5.40 0.275
Time [B_POST_mood_mean] -0.02 -8.98 – 8.94 0.997
Group [1] × Time
[B_POST_mood_mean]
24.58 14.60 – 34.56 <0.001
Random Effects
σ2 520.41
τ00 ID 1028.56
ICC 0.66
N ID 259
Observations 517
Marginal R2 / Conditional R2 0.076 / 0.689
parameters::standardise_parameters(Mood_MEM_BP)
## # Standardization method: refit
## 
## Parameter                   | Std. Coef. |        95% CI
## --------------------------------------------------------
## (Intercept)                 |      -0.11 | [-0.38, 0.16]
## Group1                      |      -0.17 | [-0.46, 0.13]
## TimeB_POST_mood_mean        |  -4.90e-04 | [-0.22, 0.22]
## Group1:TimeB_POST_mood_mean |       0.60 | [ 0.36, 0.85]
plot_model(Mood_MEM_BP, type = "int")

Baseline to 1W

Mood_B1W <- Full_data_all %>% 
  dplyr::select("ID", "Group", "A_PRE_mood_mean", "C_W1_mood_mean")
## Formatting tables as needed
Mood_B1W_long <- Mood_B1W %>%
  pivot_longer(cols = c("A_PRE_mood_mean", "C_W1_mood_mean"),
               names_to = "Time",
               values_to = "Mood_Score")
Mood_MEM_B1W <- lmer(Mood_Score ~ Group * Time + (1|ID), data = Mood_B1W_long, REML = TRUE)
summary(Mood_MEM_B1W)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: Mood_Score ~ Group * Time + (1 | ID)
##    Data: Mood_B1W_long
## 
## REML criterion at convergence: 5233.3
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -3.1944 -0.4496  0.1002  0.6008  2.4990 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  ID       (Intercept)  872.5   29.54   
##  Residual             1113.7   33.37   
## Number of obs: 509, groups:  ID, 259
## 
## Fixed effects:
##                           Estimate Std. Error      df t value Pr(>|t|)    
## (Intercept)                 40.300      6.303 425.716   6.394 4.25e-10 ***
## Group1                      -6.771      7.016 425.716  -0.965   0.3350    
## TimeC_W1_mood_mean         -14.705      6.774 254.607  -2.171   0.0309 *  
## Group1:TimeC_W1_mood_mean    8.821      7.537 254.475   1.170   0.2429    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) Group1 TC_W1_
## Group1      -0.898              
## TmC_W1_md_m -0.522  0.469       
## Gr1:TC_W1__  0.469 -0.522 -0.899
anova  (Mood_MEM_B1W)
## Type III Analysis of Variance Table with Satterthwaite's method
##            Sum Sq Mean Sq NumDF  DenDF F value   Pr(>F)   
## Group       173.2   173.2     1 258.56  0.1556 0.693601   
## Time       8310.1  8310.1     1 254.47  7.4620 0.006743 **
## Group:Time 1525.5  1525.5     1 254.47  1.3698 0.242943   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
sjPlot::tab_model(Mood_MEM_B1W)
  Mood Score
Predictors Estimates CI p
(Intercept) 40.30 27.92 – 52.68 <0.001
Group [1] -6.77 -20.56 – 7.01 0.335
Time [C_W1_mood_mean] -14.70 -28.01 – -1.40 0.030
Group [1] × Time
[C_W1_mood_mean]
8.82 -5.99 – 23.63 0.242
Random Effects
σ2 1113.66
τ00 ID 872.53
ICC 0.44
N ID 259
Observations 509
Marginal R2 / Conditional R2 0.009 / 0.444
parameters::standardise_parameters(Mood_MEM_B1W)
## # Standardization method: refit
## 
## Parameter                 | Std. Coef. |         95% CI
## -------------------------------------------------------
## (Intercept)               |       0.20 | [-0.07,  0.48]
## Group1                    |      -0.15 | [-0.46,  0.16]
## TimeC_W1_mood_mean        |      -0.33 | [-0.63, -0.03]
## Group1:TimeC_W1_mood_mean |       0.20 | [-0.13,  0.53]
plot_model(Mood_MEM_B1W, type = "int")

Baseline to 1M

Mood_B1M <- Full_data_all %>% 
  dplyr::select("ID", "Group", "A_PRE_mood_mean", "D_M1_mood_mean")
## Formatting tables as needed
Mood_B1M_long <- Mood_B1M %>%
  pivot_longer(cols = c("A_PRE_mood_mean", "D_M1_mood_mean"),
               names_to = "Time",
               values_to = "Mood_Score")
Mood_MEM_B1M <- lmer(Mood_Score ~ Group * Time + (1|ID), data = Mood_B1M_long, REML = TRUE)
summary(Mood_MEM_B1M)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: Mood_Score ~ Group * Time + (1 | ID)
##    Data: Mood_B1M_long
## 
## REML criterion at convergence: 5024.5
## 
## Scaled residuals: 
##      Min       1Q   Median       3Q      Max 
## -2.87877 -0.52317  0.06649  0.59943  2.47143 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  ID       (Intercept)  901     30.02   
##  Residual             1152     33.94   
## Number of obs: 487, groups:  ID, 259
## 
## Fixed effects:
##                           Estimate Std. Error      df t value Pr(>|t|)    
## (Intercept)                 40.300      6.408 412.526   6.289 8.16e-10 ***
## Group1                      -6.771      7.134 412.526  -0.949  0.34307    
## TimeD_M1_mood_mean         -20.878      7.175 247.462  -2.910  0.00395 ** 
## Group1:TimeD_M1_mood_mean   14.271      7.971 246.946   1.790  0.07462 .  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) Group1 TD_M1_
## Group1      -0.898              
## TmD_M1_md_m -0.501  0.450       
## Gr1:TD_M1__  0.451 -0.502 -0.900
anova  (Mood_MEM_B1M)
## Type III Analysis of Variance Table with Satterthwaite's method
##             Sum Sq Mean Sq NumDF  DenDF F value    Pr(>F)    
## Group          4.0     4.0     1 262.31  0.0035 0.9530417    
## Time       13698.0 13698.0     1 246.95 11.8886 0.0006638 ***
## Group:Time  3693.2  3693.2     1 246.95  3.2054 0.0746197 .  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
sjPlot::tab_model(Mood_MEM_B1M)
  Mood Score
Predictors Estimates CI p
(Intercept) 40.30 27.71 – 52.89 <0.001
Group [1] -6.77 -20.79 – 7.25 0.343
Time [D_M1_mood_mean] -20.88 -34.98 – -6.78 0.004
Group [1] × Time
[D_M1_mood_mean]
14.27 -1.39 – 29.93 0.074
Random Effects
σ2 1152.19
τ00 ID 901.00
ICC 0.44
N ID 259
Observations 487
Marginal R2 / Conditional R2 0.014 / 0.447
parameters::standardise_parameters(Mood_MEM_B1M)
## # Standardization method: refit
## 
## Parameter                 | Std. Coef. |         95% CI
## -------------------------------------------------------
## (Intercept)               |       0.22 | [-0.06,  0.49]
## Group1                    |      -0.15 | [-0.46,  0.16]
## TimeD_M1_mood_mean        |      -0.46 | [-0.77, -0.15]
## Group1:TimeD_M1_mood_mean |       0.31 | [-0.03,  0.66]
plot_model(Mood_MEM_B1M, type = "int")

Hypothesis 3

# Baseline to 1W/1M changes (creating new columns)
changeinvariables <- mutate(Full_data_all,
                      IUS_BP_change = B_POST_IUS_total - A_PRE_IUS_total,
                      IUS_B1W_change = C_W1_IUS_total - A_PRE_IUS_total,
                      IUS_B1M_change = D_M1_IUS_total - A_PRE_IUS_total,
                      PHQ_B1W_change = C_W1_PHQ_total - A_PRE_PHQ_total,
                      PHQ_B1M_change = D_M1_PHQ_total - A_PRE_PHQ_total,
                      GAD_B1W_change = C_W1_GAD_total - A_PRE_GAD_total,
                      GAD_B1M_change = D_M1_GAD_total - A_PRE_GAD_total,
                      Mood_BP_change = B_POST_mood_mean - A_PRE_mood_mean,
                      Mood_B1W_change = C_W1_mood_mean - A_PRE_mood_mean,
                      Mood_B1M_change = D_M1_mood_mean - A_PRE_mood_mean)
# Separating out each group

Intervention_group <- changeinvariables %>% 
  filter(Group == 1) #NOTE: this "intervention group" is both the mindset intervention and psychoeducation

ECs_group <- changeinvariables %>% 
  filter(Group == 0)

H3: IUS mediating change in PHQ over time between groups

Full sample at 1 week: Group to change in PHQ via change in IUS

Mediation.PHQchange.1W <-
  '#regressions
PHQ_B1W_change ~ c1 * Group  
IUS_B1W_change ~ a1 * Group 
PHQ_B1W_change ~ b1*IUS_B1W_change
indirect1 := a1 * b1
direct := c1
total := c1 + (a1 * b1)
'
group.IUS.PHQ.1W <- sem(Mediation.PHQchange.1W, data=changeinvariables, std.lv=T, std.ov=T, missing='fiml', se='robust', estimator='mlr', auto.var = T)

summary(group.IUS.PHQ.1W, standardized=T, rsquare=T)
## lavaan 0.6.15 ended normally after 19 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                         7
## 
##   Number of observations                           259
##   Number of missing patterns                         1
## 
## Model Test User Model:
##                                               Standard      Scaled
##   Test Statistic                                 0.000       0.000
##   Degrees of freedom                                 0           0
## 
## Parameter Estimates:
## 
##   Standard errors                             Sandwich
##   Information bread                           Observed
##   Observed information based on                Hessian
## 
## Regressions:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   PHQ_B1W_change ~                                                      
##     Group     (c1)   -0.024    0.125   -0.192    0.848   -0.024   -0.010
##   IUS_B1W_change ~                                                      
##     Group     (a1)   -0.359    0.159   -2.253    0.024   -0.359   -0.142
##   PHQ_B1W_change ~                                                      
##     IUS_B1W_c (b1)    0.408    0.085    4.799    0.000    0.408    0.408
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .PHQ_B1W_change    0.044    0.226    0.193    0.847    0.044    0.044
##    .IUS_B1W_change    0.649    0.296    2.190    0.029    0.649    0.650
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .PHQ_B1W_change    0.829    0.092    8.997    0.000    0.829    0.833
##    .IUS_B1W_change    0.976    0.158    6.184    0.000    0.976    0.980
## 
## R-Square:
##                    Estimate
##     PHQ_B1W_change    0.167
##     IUS_B1W_change    0.020
## 
## Defined Parameters:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##     indirect1        -0.146    0.067   -2.191    0.028   -0.146   -0.058
##     direct           -0.024    0.125   -0.192    0.848   -0.024   -0.010
##     total            -0.170    0.147   -1.156    0.248   -0.170   -0.067

Intervention group at 1 week: pre PHQ to 1 week PHQ via change in IU

Mediation.PHQ.intervention.1W <-
  '#regressions
C_W1_PHQ_total ~ c1 * A_PRE_PHQ_total  
IUS_B1W_change ~ a1 * A_PRE_PHQ_total 
C_W1_PHQ_total ~ b1*IUS_B1W_change
indirect1 := a1 * b1
direct := c1
total := c1 + (a1 * b1)
'
PHQ.IUS.intervention.1W <- sem(Mediation.PHQ.intervention.1W, data=Intervention_group, std.lv=T, std.ov=T, missing='fiml', se='robust', estimator='mlr', auto.var = T)

summary(PHQ.IUS.intervention.1W, standardized=T, rsquare=T)
## lavaan 0.6.15 ended normally after 32 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                         7
## 
##   Number of observations                           209
##   Number of missing patterns                         1
## 
## Model Test User Model:
##                                               Standard      Scaled
##   Test Statistic                                 0.000       0.000
##   Degrees of freedom                                 0           0
## 
## Parameter Estimates:
## 
##   Standard errors                             Sandwich
##   Information bread                           Observed
##   Observed information based on                Hessian
## 
## Regressions:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   C_W1_PHQ_total ~                                                      
##     A_PRE_PHQ (c1)    0.109    0.009   12.244    0.000    0.109    0.645
##   IUS_B1W_change ~                                                      
##     A_PRE_PHQ (a1)   -0.003    0.010   -0.262    0.793   -0.003   -0.015
##   C_W1_PHQ_total ~                                                      
##     IUS_B1W_c (b1)    0.286    0.076    3.757    0.000    0.286    0.286
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .C_W1_PHQ_total   -1.966    0.149  -13.198    0.000   -1.966   -1.970
##    .IUS_B1W_change    0.047    0.195    0.241    0.809    0.047    0.047
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .C_W1_PHQ_total    0.505    0.056    9.015    0.000    0.505    0.508
##    .IUS_B1W_change    0.995    0.159    6.245    0.000    0.995    1.000
## 
## R-Square:
##                    Estimate
##     C_W1_PHQ_total    0.492
##     IUS_B1W_change    0.000
## 
## Defined Parameters:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##     indirect1        -0.001    0.003   -0.259    0.796   -0.001   -0.004
##     direct            0.109    0.009   12.244    0.000    0.109    0.645
##     total             0.108    0.009   11.731    0.000    0.108    0.641

EC group at 1 week: pre PHQ to 1 week PHQ via change in IU

Mediation.PHQ.ECs.1W <-
  '#regressions
C_W1_PHQ_total ~ c1 * A_PRE_PHQ_total  
IUS_B1W_change ~ a1 * A_PRE_PHQ_total 
C_W1_PHQ_total ~ b1*IUS_B1W_change
indirect1 := a1 * b1
direct := c1
total := c1 + (a1 * b1)
'
PHQ.IUS.ECs.1W <- sem(Mediation.PHQ.ECs.1W, data=ECs_group, std.lv=T, std.ov=T, missing='fiml', se='robust', estimator='mlr', auto.var = T)

summary(PHQ.IUS.ECs.1W, standardized=T, rsquare=T)
## lavaan 0.6.15 ended normally after 25 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                         7
## 
##   Number of observations                            50
##   Number of missing patterns                         1
## 
## Model Test User Model:
##                                               Standard      Scaled
##   Test Statistic                                 0.000       0.000
##   Degrees of freedom                                 0           0
## 
## Parameter Estimates:
## 
##   Standard errors                             Sandwich
##   Information bread                           Observed
##   Observed information based on                Hessian
## 
## Regressions:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   C_W1_PHQ_total ~                                                      
##     A_PRE_PHQ (c1)    0.104    0.008   12.929    0.000    0.104    0.602
##   IUS_B1W_change ~                                                      
##     A_PRE_PHQ (a1)    0.036    0.013    2.654    0.008    0.036    0.206
##   C_W1_PHQ_total ~                                                      
##     IUS_B1W_c (b1)    0.503    0.051    9.905    0.000    0.503    0.503
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .C_W1_PHQ_total   -1.876    0.150  -12.504    0.000   -1.876   -1.895
##    .IUS_B1W_change   -0.643    0.303   -2.118    0.034   -0.643   -0.649
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .C_W1_PHQ_total    0.254    0.073    3.473    0.001    0.254    0.259
##    .IUS_B1W_change    0.938    0.464    2.024    0.043    0.938    0.957
## 
## R-Square:
##                    Estimate
##     C_W1_PHQ_total    0.741
##     IUS_B1W_change    0.043
## 
## Defined Parameters:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##     indirect1         0.018    0.007    2.505    0.012    0.018    0.104
##     direct            0.104    0.008   12.929    0.000    0.104    0.602
##     total             0.122    0.009   13.339    0.000    0.122    0.706

Full sample at 1 month: Group to change in PHQ via change in IUS

Mediation.PHQchange.1M <-
  '#regressions
PHQ_B1M_change ~ c1 * Group  
IUS_B1M_change ~ a1 * Group 
PHQ_B1M_change ~ b1*IUS_B1M_change
indirect1 := a1 * b1
direct := c1
total := c1 + (a1 * b1)
'
group.IUS.PHQ.1M <- sem(Mediation.PHQchange.1M, data=changeinvariables, std.lv=T, std.ov=T, missing='fiml', se='robust', estimator='mlr', auto.var = T)

summary(group.IUS.PHQ.1M, standardized=T, rsquare=T)
## lavaan 0.6.15 ended normally after 19 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                         7
## 
##   Number of observations                           259
##   Number of missing patterns                         1
## 
## Model Test User Model:
##                                               Standard      Scaled
##   Test Statistic                                 0.000       0.000
##   Degrees of freedom                                 0           0
## 
## Parameter Estimates:
## 
##   Standard errors                             Sandwich
##   Information bread                           Observed
##   Observed information based on                Hessian
## 
## Regressions:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   PHQ_B1M_change ~                                                      
##     Group     (c1)    0.023    0.118    0.192    0.848    0.023    0.009
##   IUS_B1M_change ~                                                      
##     Group     (a1)   -0.318    0.155   -2.045    0.041   -0.318   -0.126
##   PHQ_B1M_change ~                                                      
##     IUS_B1M_c (b1)    0.654    0.052   12.539    0.000    0.654    0.654
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .PHQ_B1M_change   -0.041    0.217   -0.189    0.850   -0.041   -0.041
##    .IUS_B1M_change    0.574    0.287    1.999    0.046    0.574    0.575
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .PHQ_B1M_change    0.572    0.063    9.015    0.000    0.572    0.574
##    .IUS_B1M_change    0.980    0.122    8.054    0.000    0.980    0.984
## 
## R-Square:
##                    Estimate
##     PHQ_B1M_change    0.426
##     IUS_B1M_change    0.016
## 
## Defined Parameters:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##     indirect1        -0.208    0.101   -2.056    0.040   -0.208   -0.082
##     direct            0.023    0.118    0.192    0.848    0.023    0.009
##     total            -0.185    0.167   -1.107    0.268   -0.185   -0.073

Intervention group at 1 month: pre PHQ to 1 month PHQ via change in IU

Mediation.PHQ.intervention.1M <-
  '#regressions
D_M1_PHQ_total ~ c1 * A_PRE_PHQ_total  
IUS_B1M_change ~ a1 * A_PRE_PHQ_total 
D_M1_PHQ_total ~ b1*IUS_B1M_change
indirect1 := a1 * b1
direct := c1
total := c1 + (a1 * b1)
'
PHQ.IUS.intervention.1M <- sem(Mediation.PHQ.intervention.1M, data=Intervention_group, std.lv=T, std.ov=T, missing='fiml', se='robust', estimator='mlr', auto.var = T)

summary(PHQ.IUS.intervention.1M, standardized=T, rsquare=T)
## lavaan 0.6.15 ended normally after 23 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                         7
## 
##   Number of observations                           209
##   Number of missing patterns                         1
## 
## Model Test User Model:
##                                               Standard      Scaled
##   Test Statistic                                 0.000       0.000
##   Degrees of freedom                                 0           0
## 
## Parameter Estimates:
## 
##   Standard errors                             Sandwich
##   Information bread                           Observed
##   Observed information based on                Hessian
## 
## Regressions:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   D_M1_PHQ_total ~                                                      
##     A_PRE_PHQ (c1)    0.073    0.008    9.542    0.000    0.073    0.435
##   IUS_B1M_change ~                                                      
##     A_PRE_PHQ (a1)   -0.017    0.011   -1.473    0.141   -0.017   -0.098
##   D_M1_PHQ_total ~                                                      
##     IUS_B1M_c (b1)    0.594    0.054   10.983    0.000    0.594    0.594
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .D_M1_PHQ_total   -1.324    0.140   -9.460    0.000   -1.324   -1.328
##    .IUS_B1M_change    0.298    0.198    1.503    0.133    0.298    0.299
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .D_M1_PHQ_total    0.507    0.055    9.186    0.000    0.507    0.509
##    .IUS_B1M_change    0.986    0.130    7.569    0.000    0.986    0.990
## 
## R-Square:
##                    Estimate
##     D_M1_PHQ_total    0.491
##     IUS_B1M_change    0.010
## 
## Defined Parameters:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##     indirect1        -0.010    0.007   -1.410    0.159   -0.010   -0.058
##     direct            0.073    0.008    9.542    0.000    0.073    0.435
##     total             0.064    0.010    6.197    0.000    0.064    0.377

EC group at 1 month: pre PHQ to 1 month PHQ via change in IU

Mediation.PHQ.ECs.1M <-
  '#regressions
D_M1_PHQ_total ~ c1 * A_PRE_PHQ_total  
IUS_B1M_change ~ a1 * A_PRE_PHQ_total 
D_M1_PHQ_total ~ b1*IUS_B1M_change
indirect1 := a1 * b1
direct := c1
total := c1 + (a1 * b1)
'
PHQ.IUS.ECs.1M <- sem(Mediation.PHQ.ECs.1M, data=ECs_group, std.lv=T, std.ov=T, missing='fiml', se='robust', estimator='mlr', auto.var = T)

summary(PHQ.IUS.ECs.1M, standardized=T, rsquare=T)
## lavaan 0.6.15 ended normally after 25 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                         7
## 
##   Number of observations                            50
##   Number of missing patterns                         1
## 
## Model Test User Model:
##                                               Standard      Scaled
##   Test Statistic                                 0.000       0.000
##   Degrees of freedom                                 0           0
## 
## Parameter Estimates:
## 
##   Standard errors                             Sandwich
##   Information bread                           Observed
##   Observed information based on                Hessian
## 
## Regressions:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   D_M1_PHQ_total ~                                                      
##     A_PRE_PHQ (c1)    0.067    0.016    4.242    0.000    0.067    0.386
##   IUS_B1M_change ~                                                      
##     A_PRE_PHQ (a1)   -0.009    0.023   -0.419    0.676   -0.009   -0.055
##   D_M1_PHQ_total ~                                                      
##     IUS_B1M_c (b1)    0.727    0.058   12.599    0.000    0.727    0.727
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .D_M1_PHQ_total   -1.202    0.265   -4.537    0.000   -1.202   -1.214
##    .IUS_B1M_change    0.170    0.382    0.445    0.656    0.170    0.172
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .D_M1_PHQ_total    0.346    0.120    2.882    0.004    0.346    0.353
##    .IUS_B1M_change    0.977    0.297    3.293    0.001    0.977    0.997
## 
## R-Square:
##                    Estimate
##     D_M1_PHQ_total    0.647
##     IUS_B1M_change    0.003
## 
## Defined Parameters:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##     indirect1        -0.007    0.017   -0.414    0.679   -0.007   -0.040
##     direct            0.067    0.016    4.242    0.000    0.067    0.386
##     total             0.060    0.024    2.534    0.011    0.060    0.346

H3: IUS mediating change in GAD over time between groups

Full sample at 1 week: Group to change in GAD via change in IUS

Mediation.GADchange.1W <-
  '#regressions
GAD_B1W_change ~ c1 * Group  
IUS_B1W_change ~ a1 * Group 
GAD_B1W_change ~ b1*IUS_B1W_change
indirect1 := a1 * b1
direct := c1
total := c1 + (a1 * b1)
'
group.IUS.GAD.1W <- sem(Mediation.GADchange.1W, data=changeinvariables, std.lv=T, std.ov=T, missing='fiml', se='robust', estimator='mlr', auto.var = T)

summary(group.IUS.GAD.1W, standardized=T, rsquare=T)
## lavaan 0.6.15 ended normally after 19 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                         7
## 
##   Number of observations                           259
##   Number of missing patterns                         1
## 
## Model Test User Model:
##                                               Standard      Scaled
##   Test Statistic                                 0.000       0.000
##   Degrees of freedom                                 0           0
## 
## Parameter Estimates:
## 
##   Standard errors                             Sandwich
##   Information bread                           Observed
##   Observed information based on                Hessian
## 
## Regressions:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   GAD_B1W_change ~                                                      
##     Group     (c1)   -0.038    0.111   -0.340    0.734   -0.038   -0.015
##   IUS_B1W_change ~                                                      
##     Group     (a1)   -0.359    0.159   -2.253    0.024   -0.359   -0.142
##   GAD_B1W_change ~                                                      
##     IUS_B1W_c (b1)    0.448    0.080    5.578    0.000    0.448    0.448
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .GAD_B1W_change    0.068    0.191    0.355    0.722    0.068    0.068
##    .IUS_B1W_change    0.649    0.296    2.190    0.029    0.649    0.650
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .GAD_B1W_change    0.794    0.107    7.407    0.000    0.794    0.797
##    .IUS_B1W_change    0.976    0.158    6.184    0.000    0.976    0.980
## 
## R-Square:
##                    Estimate
##     GAD_B1W_change    0.203
##     IUS_B1W_change    0.020
## 
## Defined Parameters:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##     indirect1        -0.161    0.076   -2.128    0.033   -0.161   -0.064
##     direct           -0.038    0.111   -0.340    0.734   -0.038   -0.015
##     total            -0.198    0.137   -1.443    0.149   -0.198   -0.078

Intervention group at 1 week: pre GAD to 1 week GAD via change in IU

Mediation.GAD.intervention.1W <-
  '#regressions
C_W1_GAD_total ~ c1 * A_PRE_GAD_total  
IUS_B1W_change ~ a1 * A_PRE_GAD_total 
C_W1_GAD_total ~ b1*IUS_B1W_change
indirect1 := a1 * b1
direct := c1
total := c1 + (a1 * b1)
'
GAD.IUS.intervention.1W <- sem(Mediation.GAD.intervention.1W, data=Intervention_group, std.lv=T, std.ov=T, missing='fiml', se='robust', estimator='mlr', auto.var = T)

summary(GAD.IUS.intervention.1W, standardized=T, rsquare=T)
## lavaan 0.6.15 ended normally after 23 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                         7
## 
##   Number of observations                           209
##   Number of missing patterns                         1
## 
## Model Test User Model:
##                                               Standard      Scaled
##   Test Statistic                                 0.000       0.000
##   Degrees of freedom                                 0           0
## 
## Parameter Estimates:
## 
##   Standard errors                             Sandwich
##   Information bread                           Observed
##   Observed information based on                Hessian
## 
## Regressions:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   C_W1_GAD_total ~                                                      
##     A_PRE_GAD (c1)    0.116    0.009   13.206    0.000    0.116    0.651
##   IUS_B1W_change ~                                                      
##     A_PRE_GAD (a1)   -0.009    0.011   -0.784    0.433   -0.009   -0.048
##   C_W1_GAD_total ~                                                      
##     IUS_B1W_c (b1)    0.311    0.072    4.327    0.000    0.311    0.311
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .C_W1_GAD_total   -1.835    0.132  -13.869    0.000   -1.835   -1.840
##    .IUS_B1W_change    0.135    0.189    0.717    0.474    0.135    0.136
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .C_W1_GAD_total    0.496    0.067    7.407    0.000    0.496    0.498
##    .IUS_B1W_change    0.993    0.160    6.224    0.000    0.993    0.998
## 
## R-Square:
##                    Estimate
##     C_W1_GAD_total    0.502
##     IUS_B1W_change    0.002
## 
## Defined Parameters:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##     indirect1        -0.003    0.004   -0.740    0.460   -0.003   -0.015
##     direct            0.116    0.009   13.206    0.000    0.116    0.651
##     total             0.113    0.009   12.445    0.000    0.113    0.636

EC group at 1 week: pre GAD to 1 week GAD via change in IU

Mediation.GAD.ECs.1W <-
  '#regressions
C_W1_GAD_total ~ c1 * A_PRE_GAD_total  
IUS_B1W_change ~ a1 * A_PRE_GAD_total 
C_W1_GAD_total ~ b1*IUS_B1W_change
indirect1 := a1 * b1
direct := c1
total := c1 + (a1 * b1)
'
GAD.IUS.ECs.1W <- sem(Mediation.GAD.ECs.1W, data=ECs_group, std.lv=T, std.ov=T, missing='fiml', se='robust', estimator='mlr', auto.var = T)

summary(GAD.IUS.ECs.1W, standardized=T, rsquare=T)
## lavaan 0.6.15 ended normally after 26 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                         7
## 
##   Number of observations                            50
##   Number of missing patterns                         1
## 
## Model Test User Model:
##                                               Standard      Scaled
##   Test Statistic                                 0.000       0.000
##   Degrees of freedom                                 0           0
## 
## Parameter Estimates:
## 
##   Standard errors                             Sandwich
##   Information bread                           Observed
##   Observed information based on                Hessian
## 
## Regressions:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   C_W1_GAD_total ~                                                      
##     A_PRE_GAD (c1)    0.135    0.012   11.312    0.000    0.135    0.657
##   IUS_B1W_change ~                                                      
##     A_PRE_GAD (a1)    0.027    0.017    1.622    0.105    0.027    0.131
##   C_W1_GAD_total ~                                                      
##     IUS_B1W_c (b1)    0.503    0.039   13.030    0.000    0.503    0.503
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .C_W1_GAD_total   -2.035    0.166  -12.255    0.000   -2.035   -2.055
##    .IUS_B1W_change   -0.405    0.312   -1.297    0.195   -0.405   -0.409
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .C_W1_GAD_total    0.224    0.053    4.212    0.000    0.224    0.228
##    .IUS_B1W_change    0.963    0.469    2.055    0.040    0.963    0.983
## 
## R-Square:
##                    Estimate
##     C_W1_GAD_total    0.772
##     IUS_B1W_change    0.017
## 
## Defined Parameters:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##     indirect1         0.014    0.009    1.595    0.111    0.014    0.066
##     direct            0.135    0.012   11.312    0.000    0.135    0.657
##     total             0.149    0.013   11.412    0.000    0.149    0.723

Full sample at 1 month: Group to change in GAD via change in IUS

Mediation.GADchange.1M <-
  '#regressions
GAD_B1M_change ~ c1 * Group  
IUS_B1M_change ~ a1 * Group 
GAD_B1M_change ~ b1*IUS_B1M_change
indirect1 := a1 * b1
direct := c1
total := c1 + (a1 * b1)
'
group.IUS.GAD.1M <- sem(Mediation.GADchange.1M, data=changeinvariables, std.lv=T, std.ov=T, missing='fiml', se='robust', estimator='mlr', auto.var = T)

summary(group.IUS.GAD.1M, standardized=T, rsquare=T)
## lavaan 0.6.15 ended normally after 18 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                         7
## 
##   Number of observations                           259
##   Number of missing patterns                         1
## 
## Model Test User Model:
##                                               Standard      Scaled
##   Test Statistic                                 0.000       0.000
##   Degrees of freedom                                 0           0
## 
## Parameter Estimates:
## 
##   Standard errors                             Sandwich
##   Information bread                           Observed
##   Observed information based on                Hessian
## 
## Regressions:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   GAD_B1M_change ~                                                      
##     Group     (c1)   -0.053    0.122   -0.432    0.666   -0.053   -0.021
##   IUS_B1M_change ~                                                      
##     Group     (a1)   -0.318    0.155   -2.045    0.041   -0.318   -0.126
##   GAD_B1M_change ~                                                      
##     IUS_B1M_c (b1)    0.673    0.050   13.549    0.000    0.673    0.673
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .GAD_B1M_change    0.096    0.229    0.417    0.677    0.096    0.096
##    .IUS_B1M_change    0.574    0.287    1.999    0.046    0.574    0.575
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .GAD_B1M_change    0.541    0.068    7.980    0.000    0.541    0.543
##    .IUS_B1M_change    0.980    0.122    8.054    0.000    0.980    0.984
## 
## R-Square:
##                    Estimate
##     GAD_B1M_change    0.457
##     IUS_B1M_change    0.016
## 
## Defined Parameters:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##     indirect1        -0.214    0.105   -2.027    0.043   -0.214   -0.085
##     direct           -0.053    0.122   -0.432    0.666   -0.053   -0.021
##     total            -0.267    0.167   -1.596    0.110   -0.267   -0.105

Intervention group at 1 month: pre GAD to 1 month GAD via change in IU

Mediation.GAD.intervention.1M <-
  '#regressions
D_M1_GAD_total ~ c1 * A_PRE_GAD_total  
IUS_B1M_change ~ a1 * A_PRE_GAD_total 
D_M1_GAD_total ~ b1*IUS_B1M_change
indirect1 := a1 * b1
direct := c1
total := c1 + (a1 * b1)
'
GAD.IUS.intervention.1M <- sem(Mediation.GAD.intervention.1M, data=Intervention_group, std.lv=T, std.ov=T, missing='fiml', se='robust', estimator='mlr', auto.var = T)

summary(GAD.IUS.intervention.1M, standardized=T, rsquare=T)
## lavaan 0.6.15 ended normally after 29 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                         7
## 
##   Number of observations                           209
##   Number of missing patterns                         1
## 
## Model Test User Model:
##                                               Standard      Scaled
##   Test Statistic                                 0.000       0.000
##   Degrees of freedom                                 0           0
## 
## Parameter Estimates:
## 
##   Standard errors                             Sandwich
##   Information bread                           Observed
##   Observed information based on                Hessian
## 
## Regressions:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   D_M1_GAD_total ~                                                      
##     A_PRE_GAD (c1)    0.085    0.008   11.226    0.000    0.085    0.480
##   IUS_B1M_change ~                                                      
##     A_PRE_GAD (a1)   -0.016    0.012   -1.349    0.177   -0.016   -0.091
##   D_M1_GAD_total ~                                                      
##     IUS_B1M_c (b1)    0.626    0.051   12.215    0.000    0.626    0.626
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .D_M1_GAD_total   -1.352    0.117  -11.535    0.000   -1.352   -1.355
##    .IUS_B1M_change    0.256    0.185    1.389    0.165    0.256    0.257
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .D_M1_GAD_total    0.431    0.051    8.449    0.000    0.431    0.433
##    .IUS_B1M_change    0.987    0.130    7.599    0.000    0.987    0.992
## 
## R-Square:
##                    Estimate
##     D_M1_GAD_total    0.567
##     IUS_B1M_change    0.008
## 
## Defined Parameters:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##     indirect1        -0.010    0.008   -1.298    0.194   -0.010   -0.057
##     direct            0.085    0.008   11.226    0.000    0.085    0.480
##     total             0.075    0.011    6.796    0.000    0.075    0.423

EC group at 1 month: pre GAD to 1 month GAD via change in IU

Mediation.GAD.ECs.1M <-
  '#regressions
D_M1_GAD_total ~ c1 * A_PRE_GAD_total  
IUS_B1M_change ~ a1 * A_PRE_GAD_total 
D_M1_GAD_total ~ b1*IUS_B1M_change
indirect1 := a1 * b1
direct := c1
total := c1 + (a1 * b1)
'
GAD.IUS.ECs.1M <- sem(Mediation.GAD.ECs.1M, data=ECs_group, std.lv=T, std.ov=T, missing='fiml', se='robust', estimator='mlr', auto.var = T)

summary(GAD.IUS.ECs.1M, standardized=T, rsquare=T)
## lavaan 0.6.15 ended normally after 25 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                         7
## 
##   Number of observations                            50
##   Number of missing patterns                         1
## 
## Model Test User Model:
##                                               Standard      Scaled
##   Test Statistic                                 0.000       0.000
##   Degrees of freedom                                 0           0
## 
## Parameter Estimates:
## 
##   Standard errors                             Sandwich
##   Information bread                           Observed
##   Observed information based on                Hessian
## 
## Regressions:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   D_M1_GAD_total ~                                                      
##     A_PRE_GAD (c1)    0.067    0.024    2.783    0.005    0.067    0.327
##   IUS_B1M_change ~                                                      
##     A_PRE_GAD (a1)    0.002    0.018    0.122    0.903    0.002    0.011
##   D_M1_GAD_total ~                                                      
##     IUS_B1M_c (b1)    0.673    0.051   13.210    0.000    0.673    0.673
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .D_M1_GAD_total   -1.013    0.366   -2.765    0.006   -1.013   -1.023
##    .IUS_B1M_change   -0.033    0.294   -0.113    0.910   -0.033   -0.034
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .D_M1_GAD_total    0.427    0.142    3.008    0.003    0.427    0.436
##    .IUS_B1M_change    0.980    0.301    3.256    0.001    0.980    1.000
## 
## R-Square:
##                    Estimate
##     D_M1_GAD_total    0.564
##     IUS_B1M_change    0.000
## 
## Defined Parameters:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##     indirect1         0.001    0.012    0.122    0.903    0.001    0.007
##     direct            0.067    0.024    2.783    0.005    0.067    0.327
##     total             0.069    0.027    2.562    0.010    0.069    0.334

H3: IUS mediating change in mood over time between groups

Full sample at post: Group to change in mood via change in IUS

Mediation.Moodchange.post <-
  '#regressions
Mood_BP_change ~ c1 * Group  
IUS_BP_change ~ a1 * Group 
Mood_BP_change ~ b1*IUS_BP_change
indirect1 := a1 * b1
direct := c1
total := c1 + (a1 * b1)
'
group.IUS.Mood.post <- sem(Mediation.Moodchange.post, data=changeinvariables, std.lv=T, std.ov=T, missing='fiml', se='robust', estimator='mlr', auto.var = T)

summary(group.IUS.Mood.post, standardized=T, rsquare=T)
## lavaan 0.6.15 ended normally after 20 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                         7
## 
##   Number of observations                           259
##   Number of missing patterns                         2
## 
## Model Test User Model:
##                                               Standard      Scaled
##   Test Statistic                                 0.000       0.000
##   Degrees of freedom                                 0           0
## 
## Parameter Estimates:
## 
##   Standard errors                             Sandwich
##   Information bread                           Observed
##   Observed information based on                Hessian
## 
## Regressions:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   Mood_BP_change ~                                                      
##     Group     (c1)    0.573    0.115    5.002    0.000    0.573    0.226
##   IUS_BP_change ~                                                       
##     Group     (a1)   -0.646    0.119   -5.446    0.000   -0.646   -0.255
##   Mood_BP_change ~                                                      
##     IUS_BP_ch (b1)   -0.256    0.072   -3.533    0.000   -0.256   -0.255
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .Mood_BP_change   -1.030    0.198   -5.210    0.000   -1.030   -1.028
##    .IUS_BP_change     1.167    0.203    5.746    0.000    1.167    1.169
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .Mood_BP_change    0.858    0.145    5.905    0.000    0.858    0.855
##    .IUS_BP_change     0.931    0.148    6.308    0.000    0.931    0.935
## 
## R-Square:
##                    Estimate
##     Mood_BP_change    0.145
##     IUS_BP_change     0.065
## 
## Defined Parameters:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##     indirect1         0.165    0.054    3.084    0.002    0.165    0.065
##     direct            0.573    0.115    5.002    0.000    0.573    0.226
##     total             0.738    0.112    6.570    0.000    0.738    0.291

Intervention group at post: pre mood to post mood via change in IU

Mediation.Mood.intervention.post <-
  '#regressions
B_POST_mood_mean ~ c1 * A_PRE_mood_mean  
IUS_BP_change ~ a1 * A_PRE_mood_mean 
B_POST_mood_mean ~ b1*IUS_BP_change
indirect1 := a1 * b1
direct := c1
total := c1 + (a1 * b1)
'
Mood.IUS.intervention.post <- sem(Mediation.Mood.intervention.post, data=Intervention_group, std.lv=T, std.ov=T, missing='fiml', se='robust', estimator='mlr', auto.var = T)

summary(Mood.IUS.intervention.post, standardized=T, rsquare=T)
## lavaan 0.6.15 ended normally after 23 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                         7
## 
##   Number of observations                           209
##   Number of missing patterns                         2
## 
## Model Test User Model:
##                                               Standard      Scaled
##   Test Statistic                                 0.000       0.000
##   Degrees of freedom                                 0           0
## 
## Parameter Estimates:
## 
##   Standard errors                             Sandwich
##   Information bread                           Observed
##   Observed information based on                Hessian
## 
## Regressions:
##                      Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   B_POST_mood_mean ~                                                      
##     A_PRE_md_ (c1)      0.015    0.002    8.236    0.000    0.015    0.647
##   IUS_BP_change ~                                                         
##     A_PRE_md_ (a1)      0.002    0.001    1.121    0.262    0.002    0.072
##   B_POST_mood_mean ~                                                      
##     IUS_BP_ch (b1)     -0.211    0.060   -3.533    0.000   -0.211   -0.211
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .B_POST_mood_mn   -0.494    0.098   -5.041    0.000   -0.494   -0.493
##    .IUS_BP_change    -0.056    0.080   -0.696    0.487   -0.056   -0.056
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .B_POST_mood_mn    0.560    0.077    7.247    0.000    0.560    0.557
##    .IUS_BP_change     0.990    0.173    5.722    0.000    0.990    0.995
## 
## R-Square:
##                    Estimate
##     B_POST_mood_mn    0.443
##     IUS_BP_change     0.005
## 
## Defined Parameters:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##     indirect1        -0.000    0.000   -1.021    0.307   -0.000   -0.015
##     direct            0.015    0.002    8.236    0.000    0.015    0.647
##     total             0.015    0.002    7.970    0.000    0.015    0.631

EC group at post: pre mood to post mood via change in IU

Mediation.Mood.ECs.post <-
  '#regressions
B_POST_mood_mean ~ c1 * A_PRE_mood_mean  
IUS_BP_change ~ a1 * A_PRE_mood_mean 
B_POST_mood_mean ~ b1*IUS_BP_change
indirect1 := a1 * b1
direct := c1
total := c1 + (a1 * b1)
'
Mood.IUS.ECs.post <- sem(Mediation.Mood.ECs.post, data=ECs_group, std.lv=T, std.ov=T, missing='fiml', se='robust', estimator='mlr', auto.var = T)

summary(Mood.IUS.ECs.post, standardized=T, rsquare=T)
## lavaan 0.6.15 ended normally after 25 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                         7
## 
##   Number of observations                            50
##   Number of missing patterns                         1
## 
## Model Test User Model:
##                                               Standard      Scaled
##   Test Statistic                                 0.000       0.000
##   Degrees of freedom                                 0           0
## 
## Parameter Estimates:
## 
##   Standard errors                             Sandwich
##   Information bread                           Observed
##   Observed information based on                Hessian
## 
## Regressions:
##                      Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   B_POST_mood_mean ~                                                      
##     A_PRE_md_ (c1)      0.022    0.002   13.400    0.000    0.022    0.868
##   IUS_BP_change ~                                                         
##     A_PRE_md_ (a1)      0.001    0.003    0.236    0.814    0.001    0.025
##   B_POST_mood_mean ~                                                      
##     IUS_BP_ch (b1)     -0.063    0.060   -1.052    0.293   -0.063   -0.063
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .B_POST_mood_mn   -0.895    0.104   -8.601    0.000   -0.895   -0.904
##    .IUS_BP_change    -0.026    0.178   -0.147    0.883   -0.026   -0.026
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .B_POST_mood_mn    0.240    0.063    3.801    0.000    0.240    0.245
##    .IUS_BP_change     0.979    0.226    4.336    0.000    0.979    0.999
## 
## R-Square:
##                    Estimate
##     B_POST_mood_mn    0.755
##     IUS_BP_change     0.001
## 
## Defined Parameters:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##     indirect1        -0.000    0.000   -0.231    0.817   -0.000   -0.002
##     direct            0.022    0.002   13.400    0.000    0.022    0.868
##     total             0.022    0.002   13.364    0.000    0.022    0.866

Full sample at 1 week: Group to change in mood via change in IUS

Mediation.Moodchange.1W <-
  '#regressions
Mood_B1W_change ~ c1 * Group  
IUS_B1W_change ~ a1 * Group 
Mood_B1W_change ~ b1*IUS_B1W_change
indirect1 := a1 * b1
direct := c1
total := c1 + (a1 * b1)
'
group.IUS.Mood.1W <- sem(Mediation.Moodchange.1W, data=changeinvariables, std.lv=T, std.ov=T, missing='fiml', se='robust', estimator='mlr', auto.var = T)

summary(group.IUS.Mood.1W, standardized=T, rsquare=T)
## lavaan 0.6.15 ended normally after 20 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                         7
## 
##   Number of observations                           259
##   Number of missing patterns                         2
## 
## Model Test User Model:
##                                               Standard      Scaled
##   Test Statistic                                 0.000       0.000
##   Degrees of freedom                                 0           0
## 
## Parameter Estimates:
## 
##   Standard errors                             Sandwich
##   Information bread                           Observed
##   Observed information based on                Hessian
## 
## Regressions:
##                     Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   Mood_B1W_change ~                                                      
##     Group     (c1)     0.092    0.152    0.602    0.547    0.092    0.036
##   IUS_B1W_change ~                                                       
##     Group     (a1)    -0.359    0.159   -2.253    0.024   -0.359   -0.142
##   Mood_B1W_change ~                                                      
##     IUS_B1W_c (b1)    -0.206    0.089   -2.311    0.021   -0.206   -0.205
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .Mood_B1W_chang   -0.144    0.279   -0.515    0.607   -0.144   -0.143
##    .IUS_B1W_change    0.649    0.296    2.190    0.029    0.649    0.650
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .Mood_B1W_chang    0.965    0.121    7.994    0.000    0.965    0.955
##    .IUS_B1W_change    0.976    0.158    6.184    0.000    0.976    0.980
## 
## R-Square:
##                    Estimate
##     Mood_B1W_chang    0.045
##     IUS_B1W_change    0.020
## 
## Defined Parameters:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##     indirect1         0.074    0.046    1.604    0.109    0.074    0.029
##     direct            0.092    0.152    0.602    0.547    0.092    0.036
##     total             0.166    0.151    1.100    0.271    0.166    0.065

Intervention group at 1 week: pre mood to 1 week mood via change in IU

Mediation.Mood.intervention.1W <-
  '#regressions
C_W1_mood_mean ~ c1 * A_PRE_mood_mean  
IUS_B1W_change ~ a1 * A_PRE_mood_mean 
C_W1_mood_mean ~ b1*IUS_B1W_change
indirect1 := a1 * b1
direct := c1
total := c1 + (a1 * b1)
'
Mood.IUS.intervention.1W <- sem(Mediation.Mood.intervention.1W, data=Intervention_group, std.lv=T, std.ov=T, missing='fiml', se='robust', estimator='mlr', auto.var = T)

summary(Mood.IUS.intervention.1W, standardized=T, rsquare=T)
## lavaan 0.6.15 ended normally after 17 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                         7
## 
##   Number of observations                           209
##   Number of missing patterns                         2
## 
## Model Test User Model:
##                                               Standard      Scaled
##   Test Statistic                                 0.000       0.000
##   Degrees of freedom                                 0           0
## 
## Parameter Estimates:
## 
##   Standard errors                             Sandwich
##   Information bread                           Observed
##   Observed information based on                Hessian
## 
## Regressions:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   C_W1_mood_mean ~                                                      
##     A_PRE_md_ (c1)    0.010    0.002    6.389    0.000    0.010    0.453
##   IUS_B1W_change ~                                                      
##     A_PRE_md_ (a1)    0.002    0.002    0.999    0.318    0.002    0.070
##   C_W1_mood_mean ~                                                      
##     IUS_B1W_c (b1)   -0.154    0.080   -1.929    0.054   -0.154   -0.153
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .C_W1_mood_mean   -0.339    0.087   -3.873    0.000   -0.339   -0.339
##    .IUS_B1W_change   -0.054    0.087   -0.622    0.534   -0.054   -0.054
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .C_W1_mood_mean    0.780    0.099    7.867    0.000    0.780    0.781
##    .IUS_B1W_change    0.990    0.159    6.244    0.000    0.990    0.995
## 
## R-Square:
##                    Estimate
##     C_W1_mood_mean    0.219
##     IUS_B1W_change    0.005
## 
## Defined Parameters:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##     indirect1        -0.000    0.000   -0.877    0.380   -0.000   -0.011
##     direct            0.010    0.002    6.389    0.000    0.010    0.453
##     total             0.010    0.002    5.977    0.000    0.010    0.442

EC group at 1 week: pre mood to 1 week mood via change in IU

Mediation.Mood.ECs.1W <-
  '#regressions
C_W1_mood_mean ~ c1 * A_PRE_mood_mean  
IUS_B1W_change ~ a1 * A_PRE_mood_mean 
C_W1_mood_mean ~ b1*IUS_B1W_change
indirect1 := a1 * b1
direct := c1
total := c1 + (a1 * b1)
'
Mood.IUS.ECs.1W <- sem(Mediation.Mood.ECs.1W, data=ECs_group, std.lv=T, std.ov=T, missing='fiml', se='robust', estimator='mlr', auto.var = T)

summary(Mood.IUS.ECs.1W, standardized=T, rsquare=T)
## lavaan 0.6.15 ended normally after 22 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                         7
## 
##   Number of observations                            50
##   Number of missing patterns                         2
## 
## Model Test User Model:
##                                               Standard      Scaled
##   Test Statistic                                 0.000       0.000
##   Degrees of freedom                                 0           0
## 
## Parameter Estimates:
## 
##   Standard errors                             Sandwich
##   Information bread                           Observed
##   Observed information based on                Hessian
## 
## Regressions:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   C_W1_mood_mean ~                                                      
##     A_PRE_md_ (c1)    0.011    0.003    3.198    0.001    0.011    0.434
##   IUS_B1W_change ~                                                      
##     A_PRE_md_ (a1)    0.003    0.002    2.046    0.041    0.003    0.136
##   C_W1_mood_mean ~                                                      
##     IUS_B1W_c (b1)   -0.078    0.244   -0.320    0.749   -0.078   -0.078
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .C_W1_mood_mean   -0.434    0.178   -2.433    0.015   -0.434   -0.439
##    .IUS_B1W_change   -0.140    0.154   -0.906    0.365   -0.140   -0.141
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .C_W1_mood_mean    0.795    0.129    6.163    0.000    0.795    0.815
##    .IUS_B1W_change    0.962    0.476    2.021    0.043    0.962    0.982
## 
## R-Square:
##                    Estimate
##     C_W1_mood_mean    0.185
##     IUS_B1W_change    0.018
## 
## Defined Parameters:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##     indirect1        -0.000    0.001   -0.314    0.754   -0.000   -0.011
##     direct            0.011    0.003    3.198    0.001    0.011    0.434
##     total             0.011    0.003    3.239    0.001    0.011    0.424

Full sample at 1 month: Group to change in mood via change in IUS

Mediation.Moodchange.1M <-
  '#regressions
Mood_B1M_change ~ c1 * Group  
IUS_B1M_change ~ a1 * Group 
Mood_B1M_change ~ b1*IUS_B1M_change
indirect1 := a1 * b1
direct := c1
total := c1 + (a1 * b1)
'
group.IUS.Mood.1M <- sem(Mediation.Moodchange.1M, data=changeinvariables, std.lv=T, std.ov=T, missing='fiml', se='robust', estimator='mlr', auto.var = T)

summary(group.IUS.Mood.1M, standardized=T, rsquare=T)
## lavaan 0.6.15 ended normally after 19 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                         7
## 
##   Number of observations                           259
##   Number of missing patterns                         2
## 
## Model Test User Model:
##                                               Standard      Scaled
##   Test Statistic                                 0.000       0.000
##   Degrees of freedom                                 0           0
## 
## Parameter Estimates:
## 
##   Standard errors                             Sandwich
##   Information bread                           Observed
##   Observed information based on                Hessian
## 
## Regressions:
##                     Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   Mood_B1M_change ~                                                      
##     Group     (c1)     0.143    0.151    0.950    0.342    0.143    0.054
##   IUS_B1M_change ~                                                       
##     Group     (a1)    -0.318    0.155   -2.045    0.041   -0.318   -0.126
##   Mood_B1M_change ~                                                      
##     IUS_B1M_c (b1)    -0.417    0.121   -3.452    0.001   -0.417   -0.396
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .Mood_B1M_chang   -0.144    0.284   -0.508    0.612   -0.144   -0.137
##    .IUS_B1M_change    0.574    0.287    1.999    0.046    0.574    0.575
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .Mood_B1M_chang    0.924    0.103    8.933    0.000    0.924    0.835
##    .IUS_B1M_change    0.980    0.122    8.054    0.000    0.980    0.984
## 
## R-Square:
##                    Estimate
##     Mood_B1M_chang    0.165
##     IUS_B1M_change    0.016
## 
## Defined Parameters:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##     indirect1         0.133    0.075    1.761    0.078    0.133    0.050
##     direct            0.143    0.151    0.950    0.342    0.143    0.054
##     total             0.276    0.157    1.761    0.078    0.276    0.103

Intervention group at 1 month: pre mood to 1 month mood via change in IU

Mediation.Mood.intervention.1M <-
  '#regressions
D_M1_mood_mean ~ c1 * A_PRE_mood_mean  
IUS_B1M_change ~ a1 * A_PRE_mood_mean 
D_M1_mood_mean ~ b1*IUS_B1M_change
indirect1 := a1 * b1
direct := c1
total := c1 + (a1 * b1)
'
Mood.IUS.intervention.1M <- sem(Mediation.Mood.intervention.1M, data=Intervention_group, std.lv=T, std.ov=T, missing='fiml', se='robust', estimator='mlr', auto.var = T)

summary(Mood.IUS.intervention.1M, standardized=T, rsquare=T)
## lavaan 0.6.15 ended normally after 17 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                         7
## 
##   Number of observations                           209
##   Number of missing patterns                         2
## 
## Model Test User Model:
##                                               Standard      Scaled
##   Test Statistic                                 0.000       0.000
##   Degrees of freedom                                 0           0
## 
## Parameter Estimates:
## 
##   Standard errors                             Sandwich
##   Information bread                           Observed
##   Observed information based on                Hessian
## 
## Regressions:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   D_M1_mood_mean ~                                                      
##     A_PRE_md_ (c1)    0.010    0.002    6.474    0.000    0.010    0.426
##   IUS_B1M_change ~                                                      
##     A_PRE_md_ (a1)    0.002    0.001    1.528    0.127    0.002    0.093
##   D_M1_mood_mean ~                                                      
##     IUS_B1M_c (b1)   -0.320    0.098   -3.273    0.001   -0.320   -0.312
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .D_M1_mood_mean   -0.250    0.088   -2.846    0.004   -0.250   -0.244
##    .IUS_B1M_change   -0.072    0.086   -0.840    0.401   -0.072   -0.072
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .D_M1_mood_mean    0.779    0.084    9.247    0.000    0.779    0.746
##    .IUS_B1M_change    0.987    0.134    7.379    0.000    0.987    0.991
## 
## R-Square:
##                    Estimate
##     D_M1_mood_mean    0.254
##     IUS_B1M_change    0.009
## 
## Defined Parameters:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##     indirect1        -0.001    0.001   -1.322    0.186   -0.001   -0.029
##     direct            0.010    0.002    6.474    0.000    0.010    0.426
##     total             0.009    0.002    5.591    0.000    0.009    0.397

EC group at 1 month: pre mood to 1 month mood via change in IU

Mediation.Mood.EC.1M <-
  '#regressions
D_M1_mood_mean ~ c1 * A_PRE_mood_mean  
IUS_B1M_change ~ a1 * A_PRE_mood_mean 
D_M1_mood_mean ~ b1*IUS_B1M_change
indirect1 := a1 * b1
direct := c1
total := c1 + (a1 * b1)
'
Mood.IUS.EC.1M <- sem(Mediation.Mood.EC.1M, data=ECs_group, std.lv=T, std.ov=T, missing='fiml', se='robust', estimator='mlr', auto.var = T)

summary(Mood.IUS.EC.1M, standardized=T, rsquare=T)
## lavaan 0.6.15 ended normally after 26 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                         7
## 
##   Number of observations                            50
##   Number of missing patterns                         2
## 
## Model Test User Model:
##                                               Standard      Scaled
##   Test Statistic                                 0.000       0.000
##   Degrees of freedom                                 0           0
## 
## Parameter Estimates:
## 
##   Standard errors                             Sandwich
##   Information bread                           Observed
##   Observed information based on                Hessian
## 
## Regressions:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##   D_M1_mood_mean ~                                                      
##     A_PRE_md_ (c1)    0.016    0.002    7.150    0.000    0.016    0.594
##   IUS_B1M_change ~                                                      
##     A_PRE_md_ (a1)   -0.001    0.003   -0.189    0.850   -0.001   -0.024
##   D_M1_mood_mean ~                                                      
##     IUS_B1M_c (b1)   -0.294    0.292   -1.007    0.314   -0.294   -0.278
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .D_M1_mood_mean   -0.562    0.206   -2.725    0.006   -0.562   -0.538
##    .IUS_B1M_change    0.025    0.177    0.142    0.887    0.025    0.025
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##    .D_M1_mood_mean    0.616    0.122    5.039    0.000    0.616    0.562
##    .IUS_B1M_change    0.979    0.300    3.266    0.001    0.979    0.999
## 
## R-Square:
##                    Estimate
##     D_M1_mood_mean    0.438
##     IUS_B1M_change    0.001
## 
## Defined Parameters:
##                    Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
##     indirect1         0.000    0.001    0.187    0.852    0.000    0.007
##     direct            0.016    0.002    7.150    0.000    0.016    0.594
##     total             0.016    0.002    6.726    0.000    0.016    0.600

Exploratory analyses

E1: Growth mindsets moderating the association between group and PHQ changes across time

# 1 week
moderation_GM_PHQ_1W <- lm(PHQ_B1W_change ~ Group*A_PRE_GM, data = changeinvariables)
summary(moderation_GM_PHQ_1W)
## 
## Call:
## lm(formula = PHQ_B1W_change ~ Group * A_PRE_GM, data = changeinvariables)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -20.3457  -2.1977   0.6543   3.0660  12.6543 
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)  
## (Intercept)      -2.9985     1.6374  -1.831   0.0682 .
## Group1            0.9000     1.8501   0.486   0.6271  
## A_PRE_GM          0.8170     0.5335   1.531   0.1269  
## Group1:A_PRE_GM  -0.6689     0.5929  -1.128   0.2603  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 5.217 on 255 degrees of freedom
## Multiple R-squared:  0.01487,    Adjusted R-squared:  0.003281 
## F-statistic: 1.283 on 3 and 255 DF,  p-value: 0.2807
anova(moderation_GM_PHQ_1W)
## Analysis of Variance Table
## 
## Response: PHQ_B1W_change
##                 Df Sum Sq Mean Sq F value Pr(>F)
## Group            1   32.0  32.011  1.1762 0.2792
## A_PRE_GM         1   38.1  38.104  1.4001 0.2378
## Group:A_PRE_GM   1   34.6  34.642  1.2729 0.2603
## Residuals      255 6939.9  27.215
# 1 month
moderation_GM_PHQ_1M <- lm(PHQ_B1M_change ~ Group*A_PRE_GM, data = changeinvariables)
summary(moderation_GM_PHQ_1M)
## 
## Call:
## lm(formula = PHQ_B1M_change ~ Group * A_PRE_GM, data = changeinvariables)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -24.079  -3.473   1.571   4.658  23.921 
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)
## (Intercept)     -1.68312    2.52064  -0.668    0.505
## Group1          -1.71186    2.84809  -0.601    0.548
## A_PRE_GM        -0.18134    0.82127  -0.221    0.825
## Group1:A_PRE_GM  0.09361    0.91268   0.103    0.918
## 
## Residual standard error: 8.031 on 255 degrees of freedom
## Multiple R-squared:  0.005725,   Adjusted R-squared:  -0.005973 
## F-statistic: 0.4894 on 3 and 255 DF,  p-value: 0.6899
anova(moderation_GM_PHQ_1M)
## Analysis of Variance Table
## 
## Response: PHQ_B1M_change
##                 Df  Sum Sq Mean Sq F value Pr(>F)
## Group            1    88.4  88.411  1.3708 0.2428
## A_PRE_GM         1     5.6   5.598  0.0868 0.7685
## Group:A_PRE_GM   1     0.7   0.678  0.0105 0.9184
## Residuals      255 16446.0  64.494

E1: Growth mindsets moderating the association between group and GAD changes across time

# 1 week
moderation_GM_GAD_1W <- lm(GAD_B1W_change ~ Group*A_PRE_GM, data = changeinvariables)
summary(moderation_GM_GAD_1W)
## 
## Call:
## lm(formula = GAD_B1W_change ~ Group * A_PRE_GM, data = changeinvariables)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -19.1628  -1.9618   0.7678   2.4402  15.8372 
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)
## (Intercept)      -2.1403     1.5540  -1.377    0.170
## Group1            1.5041     1.7559   0.857    0.392
## A_PRE_GM          0.6863     0.5063   1.355    0.176
## Group1:A_PRE_GM  -0.8873     0.5627  -1.577    0.116
## 
## Residual standard error: 4.951 on 255 degrees of freedom
## Multiple R-squared:  0.01583,    Adjusted R-squared:  0.004251 
## F-statistic: 1.367 on 3 and 255 DF,  p-value: 0.2533
anova(moderation_GM_GAD_1W)
## Analysis of Variance Table
## 
## Response: GAD_B1W_change
##                 Df Sum Sq Mean Sq F value Pr(>F)
## Group            1   39.1  39.068  1.5938 0.2079
## A_PRE_GM         1    0.5   0.520  0.0212 0.8843
## Group:A_PRE_GM   1   60.9  60.950  2.4865 0.1161
## Residuals      255 6250.7  24.513
# 1 month
moderation_GM_GAD_1M <- lm(GAD_B1M_change ~ Group*A_PRE_GM, data = changeinvariables)
summary(moderation_GM_GAD_1M)
## 
## Call:
## lm(formula = GAD_B1M_change ~ Group * A_PRE_GM, data = changeinvariables)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -23.921  -2.607   1.362   4.049  19.736 
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)
## (Intercept)      -1.7183     2.2535  -0.762    0.446
## Group1           -0.3008     2.5463  -0.118    0.906
## A_PRE_GM          0.2110     0.7342   0.287    0.774
## Group1:A_PRE_GM  -0.5544     0.8160  -0.679    0.497
## 
## Residual standard error: 7.18 on 255 degrees of freedom
## Multiple R-squared:  0.01503,    Adjusted R-squared:  0.003441 
## F-statistic: 1.297 on 3 and 255 DF,  p-value: 0.276
anova(moderation_GM_GAD_1M)
## Analysis of Variance Table
## 
## Response: GAD_B1M_change
##                 Df  Sum Sq Mean Sq F value  Pr(>F)  
## Group            1   148.3 148.337  2.8776 0.09104 .
## A_PRE_GM         1    28.4  28.434  0.5516 0.45835  
## Group:A_PRE_GM   1    23.8  23.799  0.4617 0.49746  
## Residuals      255 13145.1  51.549                  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

E1: Growth mindsets moderating the association between group and mood changes across time

# post
moderation_GM_mood_BP <- lm(Mood_BP_change ~ Group*A_PRE_GM, data = changeinvariables)
summary(moderation_GM_mood_BP)
## 
## Call:
## lm(formula = Mood_BP_change ~ Group * A_PRE_GM, data = changeinvariables)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -77.123 -20.121  -2.878  15.227 177.386 
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)   
## (Intercept)       -8.380     10.142  -0.826  0.40946   
## Group1            36.039     11.461   3.144  0.00186 **
## A_PRE_GM           3.051      3.305   0.923  0.35674   
## Group1:A_PRE_GM   -4.060      3.672  -1.106  0.26997   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 32.31 on 254 degrees of freedom
##   (1 observation deleted due to missingness)
## Multiple R-squared:  0.08851,    Adjusted R-squared:  0.07774 
## F-statistic: 8.221 on 3 and 254 DF,  p-value: 3.05e-05
anova(moderation_GM_mood_BP)
## Analysis of Variance Table
## 
## Response: Mood_BP_change
##                 Df Sum Sq Mean Sq F value    Pr(>F)    
## Group            1  24450 24450.0 23.4149 2.267e-06 ***
## A_PRE_GM         1     28    28.1  0.0269    0.8699    
## Group:A_PRE_GM   1   1276  1276.3  1.2222    0.2700    
## Residuals      254 265228  1044.2                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
# 1 week
moderation_GM_mood_1W <- lm(Mood_B1W_change ~ Group*A_PRE_GM, data = changeinvariables)
summary(moderation_GM_mood_1W)
## 
## Call:
## lm(formula = Mood_B1W_change ~ Group * A_PRE_GM, data = changeinvariables)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -185.327  -23.910    2.057   24.865  185.406 
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)
## (Intercept)     -15.2285    15.0280  -1.013    0.312
## Group1           15.9877    17.0154   0.940    0.348
## A_PRE_GM          0.1816     4.8651   0.037    0.970
## Group1:A_PRE_GM  -2.4147     5.4165  -0.446    0.656
## 
## Residual standard error: 47.42 on 246 degrees of freedom
##   (9 observations deleted due to missingness)
## Multiple R-squared:  0.008797,   Adjusted R-squared:  -0.00329 
## F-statistic: 0.7278 on 3 and 246 DF,  p-value: 0.5363
anova(moderation_GM_mood_1W)
## Analysis of Variance Table
## 
## Response: Mood_B1W_change
##                 Df Sum Sq Mean Sq F value Pr(>F)
## Group            1   2929 2928.52  1.3024 0.2549
## A_PRE_GM         1   1534 1533.99  0.6822 0.4096
## Group:A_PRE_GM   1    447  446.87  0.1987 0.6561
## Residuals      246 553142 2248.55
# 1 month
moderation_GM_mood_1W <- lm(Mood_B1M_change ~ Group*A_PRE_GM, data = changeinvariables)
summary(moderation_GM_mood_1W)
## 
## Call:
## lm(formula = Mood_B1M_change ~ Group * A_PRE_GM, data = changeinvariables)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -148.133  -30.369    4.174   28.895  179.310 
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)  
## (Intercept)      -29.764     16.144  -1.844   0.0665 .
## Group1            20.169     18.262   1.104   0.2706  
## A_PRE_GM           3.054      5.273   0.579   0.5630  
## Group1:A_PRE_GM   -1.997      5.875  -0.340   0.7342  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 48.52 on 224 degrees of freedom
##   (31 observations deleted due to missingness)
## Multiple R-squared:  0.01689,    Adjusted R-squared:  0.00372 
## F-statistic: 1.283 on 3 and 224 DF,  p-value: 0.2812
anova(moderation_GM_mood_1W)
## Analysis of Variance Table
## 
## Response: Mood_B1M_change
##                 Df Sum Sq Mean Sq F value  Pr(>F)  
## Group            1   7875  7875.2  3.3454 0.06872 .
## A_PRE_GM         1    910   910.0  0.3866 0.53474  
## Group:A_PRE_GM   1    272   272.0  0.1156 0.73421  
## Residuals      224 527302  2354.0                  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

E2: Association between IUS and baseline functional impairment

# Total FI scale
PRE_IUS_FI_lm <- lm(A_PRE_IUS_total ~ A_PRE_FI_total, data = Full_data_all)
summary(PRE_IUS_FI_lm)
## 
## Call:
## lm(formula = A_PRE_IUS_total ~ A_PRE_FI_total, data = Full_data_all)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -20.4978  -4.2115   0.3611   5.1474  16.9780 
## 
## Coefficients:
##                Estimate Std. Error t value Pr(>|t|)    
## (Intercept)     23.5947     1.7806   13.25   <2e-16 ***
## A_PRE_FI_total   1.2379     0.1141   10.85   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 7.354 on 257 degrees of freedom
## Multiple R-squared:  0.314,  Adjusted R-squared:  0.3113 
## F-statistic: 117.6 on 1 and 257 DF,  p-value: < 2.2e-16
anova(PRE_IUS_FI_lm)
## Analysis of Variance Table
## 
## Response: A_PRE_IUS_total
##                 Df  Sum Sq Mean Sq F value    Pr(>F)    
## A_PRE_FI_total   1  6360.1  6360.1  117.61 < 2.2e-16 ***
## Residuals      257 13897.6    54.1                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
# Friends item
PRE_IUS_friends_lm <- lm(A_PRE_IUS_total ~ B_FI_friends, data = Full_data_all)
summary(PRE_IUS_friends_lm)
## 
## Call:
## lm(formula = A_PRE_IUS_total ~ B_FI_friends, data = Full_data_all)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -26.7419  -5.1496   0.6416   6.0252  19.2581 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept)   33.2760     1.3886  23.963  < 2e-16 ***
## B_FI_friends   3.2329     0.4657   6.942 3.16e-11 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 8.159 on 256 degrees of freedom
##   (1 observation deleted due to missingness)
## Multiple R-squared:  0.1584, Adjusted R-squared:  0.1551 
## F-statistic:  48.2 on 1 and 256 DF,  p-value: 3.163e-11
anova(PRE_IUS_friends_lm)
## Analysis of Variance Table
## 
## Response: A_PRE_IUS_total
##               Df  Sum Sq Mean Sq F value    Pr(>F)    
## B_FI_friends   1  3208.3  3208.3  48.195 3.163e-11 ***
## Residuals    256 17041.8    66.6                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
# Strangers item
PRE_IUS_strangers_lm <- lm(A_PRE_IUS_total ~ B_FI_strangers, data = Full_data_all)
summary(PRE_IUS_strangers_lm)
## 
## Call:
## lm(formula = A_PRE_IUS_total ~ B_FI_strangers, data = Full_data_all)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -27.857  -4.948   1.075   6.143  20.189 
## 
## Coefficients:
##                Estimate Std. Error t value Pr(>|t|)    
## (Intercept)     34.7198     1.7331  20.033  < 2e-16 ***
## B_FI_strangers   2.0457     0.4489   4.557 8.03e-06 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 8.548 on 256 degrees of freedom
##   (1 observation deleted due to missingness)
## Multiple R-squared:  0.07504,    Adjusted R-squared:  0.07142 
## F-statistic: 20.77 on 1 and 256 DF,  p-value: 8.034e-06
anova(PRE_IUS_strangers_lm)
## Analysis of Variance Table
## 
## Response: A_PRE_IUS_total
##                 Df  Sum Sq Mean Sq F value    Pr(>F)    
## B_FI_strangers   1  1517.6 1517.59  20.768 8.034e-06 ***
## Residuals      256 18707.0   73.07                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
# Work item
PRE_IUS_work_lm <- lm(A_PRE_IUS_total ~ B_FI_work, data = Full_data_all)
summary(PRE_IUS_work_lm)
## 
## Call:
## lm(formula = A_PRE_IUS_total ~ B_FI_work, data = Full_data_all)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -20.9966  -4.3259   0.0034   5.8388  18.9211 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)   29.914      1.450  20.627   <2e-16 ***
## B_FI_work      4.082      0.451   9.051   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 7.705 on 243 degrees of freedom
##   (14 observations deleted due to missingness)
## Multiple R-squared:  0.2521, Adjusted R-squared:  0.249 
## F-statistic: 81.92 on 1 and 243 DF,  p-value: < 2.2e-16
anova(PRE_IUS_work_lm)
## Analysis of Variance Table
## 
## Response: A_PRE_IUS_total
##            Df  Sum Sq Mean Sq F value    Pr(>F)    
## B_FI_work   1  4863.8  4863.8   81.92 < 2.2e-16 ***
## Residuals 243 14427.5    59.4                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
# Education item
PRE_IUS_education_lm <- lm(A_PRE_IUS_total ~ B_FI_education, data = Full_data_all)
summary(PRE_IUS_education_lm)
## 
## Call:
## lm(formula = A_PRE_IUS_total ~ B_FI_education, data = Full_data_all)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -22.9221  -4.9864   0.0136   5.9976  18.0457 
## 
## Coefficients:
##                Estimate Std. Error t value Pr(>|t|)    
## (Intercept)     32.8900     1.3789  23.853  < 2e-16 ***
## B_FI_education   3.0321     0.4192   7.233 5.79e-12 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 8.153 on 249 degrees of freedom
##   (8 observations deleted due to missingness)
## Multiple R-squared:  0.1736, Adjusted R-squared:  0.1703 
## F-statistic: 52.32 on 1 and 249 DF,  p-value: 5.793e-12
anova(PRE_IUS_education_lm)
## Analysis of Variance Table
## 
## Response: A_PRE_IUS_total
##                 Df  Sum Sq Mean Sq F value    Pr(>F)    
## B_FI_education   1  3478.3  3478.3  52.323 5.793e-12 ***
## Residuals      249 16552.6    66.5                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
# Hobbies item
PRE_IUS_hobbies_lm <- lm(A_PRE_IUS_total ~ B_FI_hobbies, data = Full_data_all)
summary(PRE_IUS_hobbies_lm)
## 
## Call:
## lm(formula = A_PRE_IUS_total ~ B_FI_hobbies, data = Full_data_all)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -23.3848  -5.5183   0.0813   5.4372  17.6152 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept)   33.2068     1.2818  25.907  < 2e-16 ***
## B_FI_hobbies   3.1780     0.4149   7.659 3.85e-13 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 8.022 on 256 degrees of freedom
##   (1 observation deleted due to missingness)
## Multiple R-squared:  0.1864, Adjusted R-squared:  0.1832 
## F-statistic: 58.66 on 1 and 256 DF,  p-value: 3.853e-13
anova(PRE_IUS_hobbies_lm)
## Analysis of Variance Table
## 
## Response: A_PRE_IUS_total
##               Df  Sum Sq Mean Sq F value    Pr(>F)    
## B_FI_hobbies   1  3775.2  3775.2  58.662 3.853e-13 ***
## Residuals    256 16474.9    64.4                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

E2: Change in functional impairment over time across groups

# Merging across timepoints
FI_alltimepoints <- Full_data_all %>% 
  dplyr::select("ID", "Group", "A_PRE_FI_total", "C_W1_FI_total", "D_M1_FI_total")
## Formatting table as needed
FI_alltimepoints_long <- FI_alltimepoints %>%
  pivot_longer(cols = c(A_PRE_FI_total, C_W1_FI_total, D_M1_FI_total),
               names_to = "Time",
               values_to = "FI_Score")
FI_MEM <- lmer(FI_Score ~ Group * Time + (1|ID), data = FI_alltimepoints_long, REML = TRUE)
summary(FI_MEM)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: FI_Score ~ Group * Time + (1 | ID)
##    Data: FI_alltimepoints_long
## 
## REML criterion at convergence: 4589.4
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -3.5697 -0.3995  0.0428  0.4986  2.2700 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  ID       (Intercept)  9.499   3.082   
##  Residual             15.304   3.912   
## Number of obs: 777, groups:  ID, 259
## 
## Fixed effects:
##                          Estimate Std. Error       df t value Pr(>|t|)    
## (Intercept)               14.8600     0.7043 596.1394  21.099   <2e-16 ***
## Group1                     0.2692     0.7841 596.1394   0.343   0.7315    
## TimeC_W1_FI_total         -0.4800     0.7824 514.0000  -0.613   0.5398    
## TimeD_M1_FI_total         -1.9000     0.7824 514.0000  -2.428   0.0155 *  
## Group1:TimeC_W1_FI_total  -0.4674     0.8710 514.0000  -0.537   0.5918    
## Group1:TimeD_M1_FI_total  -0.5402     0.8710 514.0000  -0.620   0.5354    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) Group1 TC_W1_ TD_M1_ G1:TC_
## Group1      -0.898                            
## TmC_W1_FI_t -0.555  0.499                     
## TmD_M1_FI_t -0.555  0.499  0.500              
## G1:TC_W1_FI  0.499 -0.555 -0.898 -0.449       
## G1:TD_M1_FI  0.499 -0.555 -0.449 -0.898  0.500
anova  (FI_MEM)
## Type III Analysis of Variance Table with Satterthwaite's method
##            Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
## Group        0.19   0.188     1   257  0.0123    0.9118    
## Time       394.86 197.428     2   514 12.9001 3.417e-06 ***
## Group:Time   6.93   3.467     2   514  0.2265    0.7974    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
sjPlot::tab_model(FI_MEM)
  FI Score
Predictors Estimates CI p
(Intercept) 14.86 13.48 – 16.24 <0.001
Group [1] 0.27 -1.27 – 1.81 0.731
Time [C_W1_FI_total] -0.48 -2.02 – 1.06 0.540
Time [D_M1_FI_total] -1.90 -3.44 – -0.36 0.015
Group [1] × Time
[C_W1_FI_total]
-0.47 -2.18 – 1.24 0.592
Group [1] × Time
[D_M1_FI_total]
-0.54 -2.25 – 1.17 0.535
Random Effects
σ2 15.30
τ00 ID 9.50
ICC 0.38
N ID 259
Observations 777
Marginal R2 / Conditional R2 0.037 / 0.406
parameters::standardise_parameters(FI_MEM)
## # Standardization method: refit
## 
## Parameter                | Std. Coef. |         95% CI
## ------------------------------------------------------
## (Intercept)              |       0.17 | [-0.11,  0.44]
## Group1                   |       0.05 | [-0.25,  0.36]
## TimeC_W1_FI_total        |      -0.09 | [-0.40,  0.21]
## TimeD_M1_FI_total        |      -0.38 | [-0.68, -0.07]
## Group1:TimeC_W1_FI_total |      -0.09 | [-0.43,  0.25]
## Group1:TimeD_M1_FI_total |      -0.11 | [-0.44,  0.23]

Baseline to 1W

# Merging across timepoints
FI_B1W <- Full_data_all %>% 
  dplyr::select("ID", "Group", "A_PRE_FI_total", "C_W1_FI_total")
## Formatting table as needed
FI_B1W_long <- FI_B1W %>%
  pivot_longer(cols = c(A_PRE_FI_total, C_W1_FI_total),
               names_to = "Time",
               values_to = "FI_Score")
FI_MEM_B1W <- lmer(FI_Score ~ Group * Time + (1|ID), data = FI_B1W_long, REML = TRUE)
summary(FI_MEM_B1W)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: FI_Score ~ Group * Time + (1 | ID)
##    Data: FI_B1W_long
## 
## REML criterion at convergence: 2920.5
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -3.6846 -0.4564 -0.0069  0.5112  2.7831 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  ID       (Intercept) 9.485    3.08    
##  Residual             9.613    3.10    
## Number of obs: 518, groups:  ID, 259
## 
## Fixed effects:
##                          Estimate Std. Error       df t value Pr(>|t|)    
## (Intercept)               14.8600     0.6180 412.2951  24.044   <2e-16 ***
## Group1                     0.2692     0.6880 412.2951   0.391    0.696    
## TimeC_W1_FI_total         -0.4800     0.6201 257.0000  -0.774    0.440    
## Group1:TimeC_W1_FI_total  -0.4674     0.6903 257.0000  -0.677    0.499    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) Group1 TC_W1_
## Group1      -0.898              
## TmC_W1_FI_t -0.502  0.451       
## G1:TC_W1_FI  0.451 -0.502 -0.898
anova  (FI_MEM_B1W)
## Type III Analysis of Variance Table with Satterthwaite's method
##            Sum Sq Mean Sq NumDF DenDF F value  Pr(>F)  
## Group       0.034   0.034     1   257  0.0036 0.95248  
## Time       41.102  41.102     1   257  4.2758 0.03966 *
## Group:Time  4.407   4.407     1   257  0.4584 0.49897  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
sjPlot::tab_model(FI_MEM_B1W)
  FI Score
Predictors Estimates CI p
(Intercept) 14.86 13.65 – 16.07 <0.001
Group [1] 0.27 -1.08 – 1.62 0.696
Time [C_W1_FI_total] -0.48 -1.70 – 0.74 0.439
Group [1] × Time
[C_W1_FI_total]
-0.47 -1.82 – 0.89 0.499
Random Effects
σ2 9.61
τ00 ID 9.49
ICC 0.50
N ID 259
Observations 518
Marginal R2 / Conditional R2 0.010 / 0.502
parameters::standardise_parameters(FI_MEM_B1W)
## # Standardization method: refit
## 
## Parameter                | Std. Coef. |        95% CI
## -----------------------------------------------------
## (Intercept)              |       0.05 | [-0.23, 0.33]
## Group1                   |       0.06 | [-0.25, 0.37]
## TimeC_W1_FI_total        |      -0.11 | [-0.39, 0.17]
## Group1:TimeC_W1_FI_total |      -0.11 | [-0.42, 0.20]
plot_model(FI_MEM_B1W, type = "int")

Baseline to 1M

# Merging across timepoints
FI_B1M <- Full_data_all %>% 
  dplyr::select("ID", "Group", "A_PRE_FI_total", "D_M1_FI_total")
## Formatting table as needed
FI_B1M_long <- FI_B1M %>%
  pivot_longer(cols = c(A_PRE_FI_total, D_M1_FI_total),
               names_to = "Time",
               values_to = "FI_Score")
FI_MEM_B1M <- lmer(FI_Score ~ Group * Time + (1|ID), data = FI_B1M_long, REML = TRUE)
summary(FI_MEM_B1M)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: FI_Score ~ Group * Time + (1 | ID)
##    Data: FI_B1M_long
## 
## REML criterion at convergence: 3118.5
## 
## Scaled residuals: 
##      Min       1Q   Median       3Q      Max 
## -2.73092 -0.42014  0.07966  0.52071  2.06714 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  ID       (Intercept)  9.557   3.091   
##  Residual             16.619   4.077   
## Number of obs: 518, groups:  ID, 259
## 
## Fixed effects:
##                          Estimate Std. Error       df t value Pr(>|t|)    
## (Intercept)               14.8600     0.7235 453.5415  20.538   <2e-16 ***
## Group1                     0.2692     0.8055 453.5415   0.334   0.7384    
## TimeD_M1_FI_total         -1.9000     0.8153 257.0000  -2.330   0.0206 *  
## Group1:TimeD_M1_FI_total  -0.5402     0.9076 257.0000  -0.595   0.5523    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) Group1 TD_M1_
## Group1      -0.898              
## TmD_M1_FI_t -0.563  0.506       
## G1:TD_M1_FI  0.506 -0.563 -0.898
anova  (FI_MEM_B1M)
## Type III Analysis of Variance Table with Satterthwaite's method
##            Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
## Group        0.00    0.00     1   257  0.0000    0.9989    
## Time       380.02  380.02     1   257 22.8669 2.927e-06 ***
## Group:Time   5.89    5.89     1   257  0.3542    0.5523    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
sjPlot::tab_model(FI_MEM_B1M)
  FI Score
Predictors Estimates CI p
(Intercept) 14.86 13.44 – 16.28 <0.001
Group [1] 0.27 -1.31 – 1.85 0.738
Time [D_M1_FI_total] -1.90 -3.50 – -0.30 0.020
Group [1] × Time
[D_M1_FI_total]
-0.54 -2.32 – 1.24 0.552
Random Effects
σ2 16.62
τ00 ID 9.56
ICC 0.37
N ID 259
Observations 518
Marginal R2 / Conditional R2 0.050 / 0.397
parameters::standardise_parameters(FI_MEM_B1M)
## # Standardization method: refit
## 
## Parameter                | Std. Coef. |         95% CI
## ------------------------------------------------------
## (Intercept)              |       0.18 | [-0.09,  0.45]
## Group1                   |       0.05 | [-0.25,  0.35]
## TimeD_M1_FI_total        |      -0.36 | [-0.67, -0.06]
## Group1:TimeD_M1_FI_total |      -0.10 | [-0.44,  0.24]
plot_model(FI_MEM_B1M, type = "int")

Extra exploratory: IUS and GM association at PRE

PRE_IUS_GM_lm <- lm(A_PRE_IUS_total ~ A_PRE_GM, data = Full_data_all)
summary(PRE_IUS_GM_lm)
## 
## Call:
## lm(formula = A_PRE_IUS_total ~ A_PRE_GM, data = Full_data_all)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -32.939  -5.868   0.918   6.097  18.132 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  38.6537     1.2714  30.402  < 2e-16 ***
## A_PRE_GM      1.2142     0.3875   3.134  0.00193 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 8.713 on 257 degrees of freedom
## Multiple R-squared:  0.03681,    Adjusted R-squared:  0.03306 
## F-statistic:  9.82 on 1 and 257 DF,  p-value: 0.001926
anova(PRE_IUS_GM_lm)
## Analysis of Variance Table
## 
## Response: A_PRE_IUS_total
##            Df  Sum Sq Mean Sq F value   Pr(>F)   
## A_PRE_GM    1   745.6  745.58  9.8203 0.001926 **
## Residuals 257 19512.1   75.92                    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1