| method.MAIVE | R Documentation |
Implements the MAIVE method for publication bias correction using instrumental variable estimation with variance instrumentation. MAIVE addresses spurious precision in meta-analysis by instrumenting standard errors with inverse sample sizes, providing consistent estimates even when precision is manipulated through p-hacking \insertCiteirsova2025spuriousPublicationBiasBenchmark.
The method implements several estimators:
PET (Precision-Effect Test): Linear precision-effect model
PEESE (Precision-Effect Estimate with Standard Error): Quadratic model
PET-PEESE: Conditional selection based on PET significance
EK (Endogenous Kink): Flexible bias function with kink point
WAIVE: Robust variant with outlier downweighting
## S3 method for class 'MAIVE'
method(method_name, data, settings)
method_name |
Method identifier (automatically passed by framework) |
data |
Data frame with yi (effect sizes), sei (standard errors), ni (sample sizes), and optionally study_id for clustering |
settings |
List of method settings from method_settings.MAIVE() |
MAIVE uses inverse sample sizes (1/N) as instruments for variances (SE^2) in the first stage, then uses the instrumented variances in second-stage PET/PEESE models. This approach provides consistent estimation when precision is endogenous due to p-hacking or selective reporting.
The Anderson-Rubin confidence interval is robust to weak instruments and
is automatically computed for unweighted IV estimators when feasible
(n < 5000). For weighted estimators or large samples, standard CIs are used.
PublicationBiasBenchmark targets MAIVE 0.2.4 and persists upstream MAIVE
warnings in the standardized note column.
WAIVE extends MAIVE by downweighting: (1) negative residuals (spurious
precision) using exponential decay, and (2) extreme residuals (|z| > 2)
as potential outliers. This provides additional robustness against
publication bias and outliers.
When IV is used and the first-stage F-statistic is numeric and below 10,
PublicationBiasBenchmark blanks the standardized inferential outputs
(estimate, standard_error, ci_lower, ci_upper,
p_value) to NA while keeping convergence = TRUE. These
rows remain available as diagnostics and are treated as missing estimates in
downstream performance summaries rather than as convergence failures.
Available settings (see method_settings.MAIVE()):
PET-PEESE with IV, unweighted, levels first-stage
PET with IV, unweighted
PEESE with IV, unweighted
Endogenous Kink model with IV
PET-PEESE with MAIVE-adjusted weighting
Robust WAIVE variant with outlier downweighting
PET-PEESE with log-linear first stage
Standard PET-PEESE without instrumentation (baseline)
Single-row data frame with standardized output columns:
Method identifier
Meta-analytic effect size estimate
Standard error of estimate
95% confidence interval bounds (Anderson-Rubin if available)
Two-tailed p-value
Bayes factor (NA for MAIVE)
Logical convergence indicator
Error messages if any
First-stage F-statistic for instrument strength
Hausman test statistic comparing IV vs OLS
P-value for publication bias test
Whether Anderson-Rubin CI was used
Whether AR CI was computed successfully
Instrument strength classification returned by MAIVE or derived from the first-stage F-statistic
Petr Cala cala.p@seznam.cz
run_method(), method_settings(), method_extra_columns()
## Not run:
# Generate test data
data <- simulate_dgm("Stanley2017", condition_id = 1)
# Apply default MAIVE (PET-PEESE with IV)
result <- run_method("MAIVE", data, "default")
# Apply WAIVE variant
result_waive <- run_method("MAIVE", data, "WAIVE")
# Apply weighted MAIVE
result_weighted <- run_method("MAIVE", data, "weighted")
# View available configurations
method_settings("MAIVE")
## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.