0
$\begingroup$

I am confused on how to interpret results of my mediation analysis where my ACME is significant (but very low by absolute value) but Prop. Mediated is not significant.
Here is the full code:

dt1 <- read.table(url('https://www.dropbox.com/s/6ahwnmxbottvxii/dt1.tsv?dl=1'))
head (dt1)
#    X      M     Y  conf1 conf2 conf3 conf4
# 1: 1 -0.074 6.583   Male 41.43  3420     2
# 2: 2  0.070 4.345   Male 40.40  2850     3
# 3: 2 -0.115 4.964 Female 37.10  4285     3
# 4: 1  0.012 6.232 Female 41.10  3380     2
# 5: 2  0.018 6.065 Female 41.00  3375     3
# 6: 2  0.012 5.542   Male 40.50  3980     3


# Step 1: total effect - association between X and Y
fit.total  <- lm(Y ~ X + conf1+conf2+conf3+conf4, data = dt1)
summary(fit.total)
# Call:
#   lm(formula = Y ~ X + conf1 + conf2 + conf3 + conf4, data = dt1)
# 
# Residuals:
#   Min       1Q   Median       3Q      Max 
# -2.17008 -0.47772 -0.03215  0.45593  1.60839 
# 
# Coefficients:
#               Estimate Std. Error t value Pr(>|t|)    
# (Intercept)  6.498e+00  1.369e+00   4.747 5.68e-06 ***
# X           -1.640e-01  8.782e-02  -1.868   0.0642 .  
# conf1Female  1.091e-01  1.262e-01   0.865   0.3889    
# conf2       -1.920e-02  3.608e-02  -0.532   0.5957    
# conf3        2.336e-05  1.178e-04   0.198   0.8431    
# conf4       -8.651e-02  7.822e-02  -1.106   0.2709    
# ---
# Residual standard error: 0.709 on 122 degrees of freedom
# Multiple R-squared:  0.04696, Adjusted R-squared:  0.007902 
# F-statistic: 1.202 on 5 and 122 DF,  p-value: 0.3121



# Step 2: association between X and mediator
fit.mediator <- lm(M ~ X + conf1+conf2+conf3+conf4, data = dt1)
summary(fit.mediator)
# Call:
#   lm(formula = M ~ X + conf1 + conf2 + conf3 + conf4, data = dt1)
# 
# Residuals:
#   Min        1Q    Median        3Q       Max 
# -0.217684 -0.061665  0.009555  0.058005  0.198306 
# 
# Coefficients:
#               Estimate Std. Error t value Pr(>|t|)   
# (Intercept) -3.181e-02  1.659e-01  -0.192   0.8483   
# X            3.082e-02  1.065e-02   2.895   0.0045 **
# conf1Female -1.628e-02  1.530e-02  -1.064   0.2892   
# conf2       -2.730e-03  4.374e-03  -0.624   0.5337   
# conf3        1.334e-05  1.427e-05   0.935   0.3519   
# conf4        1.539e-02  9.482e-03   1.623   0.1072   
# ---
# Residual standard error: 0.08595 on 122 degrees of freedom
# Multiple R-squared:  0.0972,  Adjusted R-squared:  0.0602 
# F-statistic: 2.627 on 5 and 122 DF,  p-value: 0.02714



# Step 3: effect of the mediator on Y:
fit.dv <- lm(Y ~ X + M + conf1+conf2+conf3+conf4, data = dt1)
summary(fit.dv)
# Call:
#   lm(formula = Y ~ X + M + conf1 + conf2 + conf3 + conf4, data = dt1)
# 
# Residuals:
#   Min       1Q   Median       3Q      Max 
# -2.06212 -0.48447  0.02689  0.46917  1.52979 
# 
# Coefficients:
#               Estimate Std. Error t value Pr(>|t|)    
# (Intercept)  6.438e+00  1.339e+00   4.807 4.44e-06 ***
# X           -1.067e-01  8.882e-02  -1.202   0.2318    
# M           -1.860e+00  7.306e-01  -2.546   0.0122 *  
# conf1Female  7.883e-02  1.240e-01   0.636   0.5262    
# conf2       -2.428e-02  3.536e-02  -0.687   0.4936    
# conf3        4.818e-05  1.156e-04   0.417   0.6776    
# conf4       -5.789e-02  7.734e-02  -0.748   0.4557    
# ---
# Residual standard error: 0.6936 on 121 degrees of freedom
# Multiple R-squared:  0.09542, Adjusted R-squared:  0.05056 
# F-statistic: 2.127 on 6 and 121 DF,  p-value: 0.05497


# Step 4: mediation analysis:
require(mediation)

res.med <- mediate(fit.mediator, fit.dv, treat = 'X', mediator = 'M', boot = T, sims = 1000)
summary(res.med)
# Causal Mediation Analysis 
# Nonparametric Bootstrap Confidence Intervals with the Percentile Method
# 
# Estimate 95% CI Lower 95% CI Upper p-value   
# ACME            -0.0573      -0.1153        -0.01   0.002 **
# ADE             -0.1067      -0.2969         0.09   0.286   
# Total Effect    -0.1640      -0.3596         0.04   0.100 . 
# Prop. Mediated   0.3494      -1.1946         3.32   0.102   
# ---
# Sample Size Used: 128 
# Simulations: 1000 

From the first steps, I initially concluded that I do have mediation effect (I see significant association M ~ X and borderline significant Y ~ X, and the latter one disappears when I add mediator - Y ~ X + M). But I'm not sure how to interpret results of actual mediate() call. Would be very grateful for any help!

$\endgroup$
0
$\begingroup$

You could state something like this and it should be good enough for the reviewers:

The indirect effect of X on Y via M is statistically significant (ab = -0.057, 95%CI = [-0.11, -0.01]). The proportion mediated is (-0.057/-0.164) = 0.349.

You may want to crank the number of bootstrap repetitions up to 5,000 or 10,000 though.

As a side note, I rarely ever see proportion mediated get reported (but this is an informative effect size and you should still report it!). The reason the 95% CI for Prop. Mediated is so large is because your sample size is rather small (N=128). Based on various simulation results (e.g., Lee et al. 2015; MacKinnon et al., 1995), Prop. Mediated do not really stabilize until N is larger than 500.

  • Lee, S., Lei, M. K., & Brody, G. H. (2015). Constructing confidence intervals for effect size measures of an indirect effect. Multivariate behavioral research, 50(6), 600-613.

  • MacKinnon, D. P., Warsi, G., & Dwyer, J. H. (1995). A simulation study of mediated effect measures. Multivariate behavioral research, 30(1), 41-62.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.