meta_pdiff_two {esci}R Documentation

Estimate meta-analytic difference in proportions over multiple studies with two independent groups and a categorical outcome variable.

Description

meta_pdiff_two is suitable for synthesizing across multiple two-group studies with a categorical outcome variable. It takes as input the the number of cases/events in the comparison and reference groups as well as the total number of samples in the comparison and reference groups.

Usage

meta_pdiff_two(
  data,
  comparison_cases,
  comparison_ns,
  reference_cases,
  reference_ns,
  labels = NULL,
  moderator = NULL,
  contrast = NULL,
  effect_label = "My effect",
  reported_effect_size = c("RD", "RR", "OR", "AS", "PETO"),
  random_effects = TRUE,
  conf_level = 0.95
)

Arguments

data

A dataframe or tibble

comparison_cases

A collection of case/event counts for the comparison groups, 1 per study, all integers >= 0

comparison_ns

A collection of sample sizes for the comparison groups, 1 per study, all integers > 2

reference_cases

A collection of case/event counts for the reference groups, 1 per study, all integers >= 0

reference_ns

A collection of sample sizes for the reference groups, 1 per study, all integers > 2

labels

An optional collection of study labels

moderator

An optional factor to analyze as a categorical moderator, must have k > 2 per groups

contrast

An optional contrast to estimate between moderator levels; express as a vector of contrast weights with 1 weight per moderator level.

effect_label

Optional character giving a human-friendly name of the effect being synthesized

reported_effect_size

Character specifying effect size to return: Must be one of 'RD' (risk difference, default), 'RR' (log risk ratio), 'OR' (log odds ratio), 'AS' (arcsine square root transformed risk difference), or 'PETO' (log odds ratio estimated using Peto's method). See metafor::escalc() for details.

random_effects

TRUE for random effect model; FALSE for 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().

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

The conversion of events into suitable effect sizes is handled by metafor::escalc()

Value

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

Examples

# Data set: Replications of power on egocentric behavior
esci_meta_pdiff_two <- data.frame(
  studies = c(
    "Online",
    "Original",
    "Online Pilot",
    "Exact replication"
  ),
  control_egocentric = c(
    33,
    4,
    4,
    7
  ),
  control_sample_size = c(
   101,
    33,
    10,
    53
  ),
  power_egocentric = c(
    48,
    8,
    4,
    11
  ),
  power_sample_size = c(
    105,
    24,
    12,
    56
  ),
  setting = as.factor(
    c(
      "Online",
     "In-Person",
      "Online",
      "In-Person"
    )
  )
)

# Meta-analysis, risk difference as effect size
estimate <- esci::meta_pdiff_two(
  esci_meta_pdiff_two,
  power_egocentric,
  power_sample_size,
  control_egocentric,
  control_sample_size,
  studies,
  reported_effect_size = "RD"
)

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


# Add a categorical moderator (setting)
estimate_moderator <- esci::meta_pdiff_two(
  esci_meta_pdiff_two,
  power_egocentric,
  power_sample_size,
  control_egocentric,
  control_sample_size,
  studies,
  moderator = setting,
  reported_effect_size = "RD"
)

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



[Package esci version 1.0.2 Index]