moderation by article content
Are the relationships moderated by article content types (health or climate)?
self-relevance
run model
Note: The model allowing both condition and article content type to vary randomly across people did not converge. We therefore used AIC to select the best fitting random effects structure and summarize results from this model
= lmer(msg_rel_self ~ 1 + article_cond * content + (1 + article_cond | SID),
mod_h1_1 data = study6,
control = lmerControl(optimizer = "bobyqa"))
= lmer(msg_rel_self ~ 1 + article_cond * content + (1 + content | SID),
mod_h1_2 data = study6,
control = lmerControl(optimizer = "bobyqa"))
anova(mod_h1_1, mod_h1_2)
summary(mod_h1_2)
## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: msg_rel_self ~ 1 + article_cond * content + (1 + content | SID)
## Data: study6
## Control: lmerControl(optimizer = "bobyqa")
##
## REML criterion at convergence: 73563
##
## Scaled residuals:
## Min 1Q Median 3Q Max
## -3.4975 -0.5745 0.0706 0.5683 3.6967
##
## Random effects:
## Groups Name Variance Std.Dev. Corr
## SID (Intercept) 489.4 22.12
## contentclimate 393.1 19.83 -0.38
## Residual 495.1 22.25
## Number of obs: 7940, groups: SID, 397
##
## Fixed effects:
## Estimate Std. Error df t value
## (Intercept) 51.1853 1.2211 476.5708 41.918
## article_condself 13.2763 1.0107 7500.6358 13.136
## article_condsocial 5.3246 1.0138 7488.0287 5.252
## contentclimate 3.4472 1.2309 589.1541 2.801
## article_condself:contentclimate -2.2894 1.4120 7490.1761 -1.621
## article_condsocial:contentclimate -0.1779 1.4179 7477.5483 -0.125
## Pr(>|t|)
## (Intercept) < 0.0000000000000002 ***
## article_condself < 0.0000000000000002 ***
## article_condsocial 0.000000154 ***
## contentclimate 0.00527 **
## article_condself:contentclimate 0.10499
## article_condsocial:contentclimate 0.90016
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Correlation of Fixed Effects:
## (Intr) artcl_cndsl artcl_cndsc cntntc artcl_cndsl:
## artcl_cndsl -0.217
## artcl_cndsc -0.220 0.066
## contentclmt -0.454 0.217 0.220
## artcl_cndsl: 0.157 -0.698 -0.072 -0.318
## artcl_cndsc: 0.158 -0.071 -0.697 -0.315 0.100
model summary table
table_model(mod_h1_2)
term | b [95% CI] | d | df | t | p |
---|---|---|---|---|---|
control | 51.19 [48.79, 53.58] | – | 476.57 | 41.92 | < .001 |
self | 13.28 [11.30, 15.26] | 0.30 | 7500.64 | 13.14 | < .001 |
social | 5.32 [3.34, 7.31] | 0.12 | 7488.03 | 5.25 | < .001 |
content (climate) | 3.45 [1.03, 5.86] | 0.23 | 589.15 | 2.80 | .010 |
self x content (climate) | -2.29 [-5.06, 0.48] | -0.04 | 7490.18 | -1.62 | .100 |
social x content (climate) | -0.18 [-2.96, 2.60] | -0.00 | 7477.55 | -0.13 | .900 |
plot
# generate predicted values
= ggeffects::ggpredict(mod_h1_2, c("article_cond", "content")) %>%
predicted_h1 data.frame() %>%
mutate(model = "self\nrelevance")
= ggeffects::ggpredict(mod_h2, c("article_cond", "content")) %>%
predicted_h2 data.frame() %>%
mutate(model = "social\nrelevance")
= ggeffects::ggpredict(mod_h3_h4, c("article_cond", "sharing_type", "content")) %>%
predicted_h3_h4 data.frame() %>%
mutate(group = ifelse(group == "0", "broadcast sharing", "narrowcast sharing"))
# manipulation check plot
= bind_rows(predicted_h1, predicted_h2) %>%
check ggplot(aes(x = x, y = predicted, color = group)) +
stat_summary(aes(group = group), fun.y = "mean", geom = "line", position = position_dodge(.2), size = 1) +
geom_pointrange(aes( ymin = conf.low, ymax = conf.high), position = position_dodge(.2), size = 1) +
facet_grid(~model) +
scale_color_manual(name = "", values = palette_content) +
labs(x = "", y = "mean predicted rating\n") +
+
plot_aes theme(legend.position = c(.85, .15))
# causal analysis plot
= predicted_h3_h4 %>%
causal mutate(group = gsub(" sharing", "", group)) %>%
ggplot(aes(x = x, y = predicted, color = facet)) +
stat_summary(aes(group = facet), fun.y = "mean", geom = "line", position = position_dodge(.2), size = 1) +
geom_pointrange(aes(ymin = conf.low, ymax = conf.high), position = position_dodge(.2), size = 1) +
facet_grid(~group) +
scale_color_manual(name = "", values = palette_content) +
scale_alpha_manual(name = "", values = c(1, .5)) +
labs(x = "", y = "mean predicted sharing intention rating\n") +
scale_y_continuous(limits = c(40, 60)) +
+
plot_aes theme(legend.position = c(.85, .15))
::plot_grid(check, causal, labels = c("A", "B")) cowplot
social relevance
Test whether messages in the social condition will be rated as more socially relevant than messages in the control condition.
run model
model summary table