meta_d1 {esci}R Documentation

Estimate a meta-analytic Cohen's d1 across multiple studies

Description

meta_d1 is suitable for synthesizing across multiple single-group studies with a continuous outcome variable, but where the outcome is not measured on the same scale in all studies

Usage

meta_d1(
  data,
  ds,
  ns,
  labels = NULL,
  moderator = NULL,
  contrast = NULL,
  effect_label = "My effect",
  random_effects = TRUE,
  conf_level = 0.95
)

Arguments

data

A data frame or tibble

ds

Set of bias-adjusted cohen's d1 values, 1 for each study

ns

Set of sample sizes, positive integers, 1 for each study

labels

Optional set of labels, 1 for each study

moderator

Optional factor as a categorical moderator; should have k > 2 per group

contrast

Optional vector specifying a contrast between moderator levels

effect_label

Optional character providing a human-friendly label for the effect

random_effects

Boolean; TRUE for a random effects model; otherwise fixed effects

conf_level

The confidence level for the confidence interval. Given in decimal form. Defaults to 0.95.

Details

Once you generate an estimate with this function, you can visualize it with plot_meta().

Each study's effect size should be expressed as Cohen's d1: (mean - reference) / sd.

And the d1 values should all be corrected for bias. The function CI_smd_one() can assist with converting raw data from each study to d1_unbiased.

The meta-analytic effect size, confidence interval and heterogeneity estimates all come from metafor::rma().

The diamond ratio and its confidence interval come from CI_diamond_ratio().

Value

An esci-estimate object; a list of data frames and properties. Returned tables include:

Examples

# example code
  original_7 <- data.frame(
study_name = c(
  "Aden (1993)"	,
  "Buggs (1995)"	,
  "Crazed (1999)"	,
  "Dudley (2003)"	,
  "Evers (2005)"	,
  "Fox (2009)",
  "Mine (2011)"
),
rt_mean = c(
  454	,
  317	,
  430	,
  525	,
  479	,
  387,
  531
),
rt_sd = c(
  142	,
  158	,
  137	,
  260	,
  144	,
  165,
  233
),
rt_n = c(
  24	,
  7	,
  20	,
  8	,
 14	,
 13,
  18
),
subset = as.factor(
  c(
    "90s",
   "90s",
    "90s",
    "00s",
    "00s",
    "00s",
    "00s"
  )
),
d1_unbiased = c(
  3.091587,
  1.742751,
  3.012857,
  1.793487,
  3.130074,
  2.195209,
  2.17667
)
)


# Fixed effect, 95% CI
estimate <- esci::meta_d1(
  original_7,
  d1_unbiased,
  rt_n,
  study_name,
  random_effects = FALSE
)

# Forest plot
myplot_forest <- esci::plot_meta(estimate)


# Add a moderator
estimate_moderator <- esci::meta_d1(
  data = original_7,
  ds = d1_unbiased,
  ns = rt_n,
  moderator = subset,
  labels = study_name,
  random_effects = FALSE
)

# Forest plot
myplot_forest_moderator <- esci::plot_meta(estimate_moderator)



[Package esci version 1.0.2 Index]