GitHub - stmcg/estmeansd: Estimating the Sample Mean and Standard Deviation from Commonly Reported Quantiles in Meta-Analysis (original) (raw)

estmeansd: Estimating the Sample Mean and Standard Deviation from Commonly Reported Quantiles in Meta-Analysis

CRAN_Status_Badge CRAN_Download_Badge CRAN_Download_Badge_All

The estmeansd package implements the methods of McGrath et al. (2020) and Cai et al. (2021) for estimating the sample mean and standard deviation from commonly reported quantiles in meta-analysis. Specifically, these methods can be applied to studies that report one of the following sets of summary statistics:

This package also implements the methods described by McGrath et al. (2023) to estimate the standard error of these mean and standard deviation estimators. The estimated standard errors are needed for computing the weights in conventional inverse-variance weighted meta-analysis approaches.

Additionally, the Shiny appestmeansd implements these methods.

Note that the R packagemetamedian can apply these methods (as well as several others) to perform a meta-analysis. See McGrath et al. (in press) for a guide on using the metamedian package.

Installation

You can install the released version of estmeansd from CRAN with:

install.packages("estmeansd")

After installing the devtools package (i.e., callinginstall.packages(devtools)), the development version of estmeansdcan be installed from GitHub with:

devtools::install_github("stmcg/estmeansd")

Usage

Specifically, this package implements the Box-Cox (BC), Quantile Estimation (QE), and Method for Unknown Non-Normal Distributions (MLN) approaches to estimate the sample mean and standard deviation. The BC, QE, and MLN methods can be applied using the bc.mean.sd() qe.mean.sd(), and mln.mean.sd() functions, respectively:

library(estmeansd) set.seed(1)

BC Method

res_bc <- bc.mean.sd(min.val = 2, med.val = 4, max.val = 9, n = 100) res_bc #> $est.mean #> [1] 4.210971 #> #> $est.sd #> [1] 1.337348

QE Method

res_qe <- qe.mean.sd(min.val = 2, med.val = 4, max.val = 9, n = 100) res_qe #> $est.mean #> [1] 4.347284 #> #> $est.sd #> [1] 1.502171

MLN Method

res_mln <- mln.mean.sd(min.val = 2, med.val = 4, max.val = 9, n = 100) res_mln #> $est.mean #> [1] 4.195238 #> #> $est.sd #> [1] 1.294908

To estimate the standard error of these mean estimators, we can apply the get_SE() function as follows:

BC Method

res_bc_se <- get_SE(res_bc) res_bc_se$est.se #> [1] 0.1649077

QE Method

res_qe_se <- get_SE(res_qe) res_qe_se$est.se #> [1] 0.2391081

MLN Method

res_mln_se <- get_SE(res_mln) res_mln_se$est.se #> [1] 0.1505351