1 Introduction

This report presents a meta-regression analysis exploring whether age and sex (percentage of male participants) explain variability in effect sizes derived from the provided imaging studies. The effect sizes are correlations related to GSH measures. Given the data available, we can only include mean age and percent male as moderators. Other potential moderators such as medication status, duration of psychosis, or symptom severity are not consistently reported and thus cannot be analyzed at this time.

2 Data Preparation

We begin by loading the necessary packages and preparing the data. The imaging_data frame and moderators data frame are constructed based on the previously provided data.

library(metafor)
# Imaging data as provided:
imaging_data <- data.frame(
  authors = c(
    # Positive (5)
    "Matsuzawa et al. 2008", "Reyes-Madrigal et al. 2019", 
    "Iwata et al. 2021", "Coughlin et al. 2021", "Lesh et al. 2021",
    # Negative (6)
    "Matsuzawa et al. 2008", "Reyes-Madrigal et al. 2019", 
    "Iwata et al. 2021", "Coughlin et al. 2021", "Lesh et al. 2021", "Ravanfar et al. 2022",
    # General (2)
    "Reyes-Madrigal et al. 2019", "Iwata et al. 2021",
    # Total (5)
    "Matsuzawa et al. 2008", "Reyes-Madrigal et al. 2019", 
    "Iwata et al. 2021", "Lesh et al. 2021", "Ravanfar et al. 2022"
  ),
  correlation = c(
    # Positive
    -0.43, 0.96, -0.08, 0.14, -0.266,
    # Negative
    -0.60, 0.36, 0.15, 0.21, -0.01, -0.348,
    # General
    0.14, -0.15,
    # Total
    -0.41, 0.42, -0.08, -0.293, -0.286
  ),
  sample_size = c(
    # Positive
    20, 10, 67, 16, 33,
    # Negative
    20, 10, 67, 16, 33, 12,
    # General
    10, 67,
    # Total
    20, 10, 67, 33, 12
  ),
  category = c(
    rep("Positive", 5),
    rep("Negative", 6),
    rep("General", 2),
    rep("Total", 5)
  ),
  stringsAsFactors = FALSE
)

# Moderators data extracted from text (age and sex for a subset of imaging studies)
moderators <- data.frame(
  authors = c("Matsuzawa et al. 2008", "Reyes-Madrigal et al. 2019",
              "Iwata et al. 2021", "Coughlin et al. 2021", "Lesh et al. 2021"),
  mean_age = c(30.7, 22.3, 43.6, 34.2, 21.4),
  percent_male = c(0.60, 0.50, 0.75, 0.7391, 0.6944),
  # Other moderators are NA due to lack of data
  medication_status = c(NA, NA, "treated", "treated", NA),
  duration_psychosis = c(NA, NA, NA, NA, NA),
  overall_severity = c(NA, NA, NA, NA, NA),
  positive_symptoms = c(NA, NA, NA, NA, NA),
  negative_symptoms = c(NA, NA, NA, NA, NA),
  disorganization_symptoms = c(NA, NA, NA, NA, NA),
  stringsAsFactors = FALSE
)

3 Merging Data

Next, we merge the effect size data (imaging_data) with the moderator variables (moderators).

meta_imaging <- merge(imaging_data, moderators, by = "authors", all.x = TRUE)
# Subset to rows that have both mean_age and percent_male data
meta_imaging_sub <- meta_imaging[!is.na(meta_imaging$mean_age) & !is.na(meta_imaging$percent_male), ]

# Display the first few rows
head(meta_imaging_sub)
##                authors correlation sample_size category mean_age percent_male
## 1 Coughlin et al. 2021        0.21          16 Negative     34.2       0.7391
## 2 Coughlin et al. 2021        0.14          16 Positive     34.2       0.7391
## 3    Iwata et al. 2021       -0.15          67  General     43.6       0.7500
## 4    Iwata et al. 2021        0.15          67 Negative     43.6       0.7500
## 5    Iwata et al. 2021       -0.08          67    Total     43.6       0.7500
## 6    Iwata et al. 2021       -0.08          67 Positive     43.6       0.7500
##   medication_status duration_psychosis overall_severity positive_symptoms
## 1           treated                 NA               NA                NA
## 2           treated                 NA               NA                NA
## 3           treated                 NA               NA                NA
## 4           treated                 NA               NA                NA
## 5           treated                 NA               NA                NA
## 6           treated                 NA               NA                NA
##   negative_symptoms disorganization_symptoms
## 1                NA                       NA
## 2                NA                       NA
## 3                NA                       NA
## 4                NA                       NA
## 5                NA                       NA
## 6                NA                       NA

4 Effect Size Transformation

We convert the correlations to Fisher’s z-scores for meta-analysis and compute their variances using the approximation vi = 1/(n - 3):

meta_imaging_sub$yi <- atanh(meta_imaging_sub$correlation)
meta_imaging_sub$vi <- 1 / (meta_imaging_sub$sample_size - 3)

5 Running the Meta-Regression

With effect sizes (yi), their variances (vi), and moderators (mean_age and percent_male), we can fit a random-effects meta-regression model using the rma() function from metafor.

res <- rma(yi = yi, vi = vi, mods = ~ mean_age + percent_male, data = meta_imaging_sub, method = "REML")
summary(res)
## 
## Mixed-Effects Model (k = 16; tau^2 estimator: REML)
## 
##   logLik  deviance       AIC       BIC      AICc   
## -10.6185   21.2369   29.2369   31.4967   34.2369   
## 
## tau^2 (estimated amount of residual heterogeneity):     0.1965 (SE = 0.0992)
## tau (square root of estimated tau^2 value):             0.4433
## I^2 (residual heterogeneity / unaccounted variability): 84.09%
## H^2 (unaccounted variability / sampling variability):   6.29
## R^2 (amount of heterogeneity accounted for):            0.00%
## 
## Test for Residual Heterogeneity:
## QE(df = 13) = 49.5832, p-val < .0001
## 
## Test of Moderators (coefficients 2:3):
## QM(df = 2) = 2.0478, p-val = 0.3592
## 
## Model Results:
## 
##               estimate      se     zval    pval    ci.lb   ci.ub    
## intrcpt         1.3042  0.9173   1.4218  0.1551  -0.4936  3.1020    
## mean_age        0.0045  0.0186   0.2433  0.8078  -0.0319  0.0410    
## percent_male   -2.1762  1.7867  -1.2180  0.2232  -5.6780  1.3256    
## 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

6 Interpretation of Results

The output provides several pieces of information:

  • tau² (residual heterogeneity): Indicates unexplained variability between studies.
  • I² = 84.09%: Suggests that a large portion of the variability between effect sizes is due to heterogeneity not explained by the moderators.
  • R² = 0%: The moderators (mean_age and percent_male) do not explain any of the heterogeneity.
  • Test of Moderators (QM): Non-significant (p = 0.3592), suggesting that the combination of mean_age and percent_male does not significantly predict the variability in effect sizes.
  • Both individual moderators (mean_age and percent_male) have wide confidence intervals overlapping zero and non-significant p-values, indicating no statistically reliable relationship with the effect sizes.

Conclusion:
The meta-regression model shows that neither mean age nor the proportion of male participants explains the observed heterogeneity in effect sizes. Although we attempted to explore these two moderators, the large residual heterogeneity and non-significant results indicate that other factors or variables—currently unmeasured or unavailable—are likely driving the differences in effect sizes across studies.

7 Next Steps

To further reduce heterogeneity and better understand what drives these effect size differences, future analyses would need:

  • More standardized and consistently reported data on medication status and treatment details.
  • Quantifiable measures of duration of psychosis.
  • Mean symptom severity scores (overall or by domain) across all studies.

With more complete data, meta-regression could be extended to include these additional moderators and potentially reveal meaningful explanations for the observed heterogeneity.