# esc - Effect Size Computation for Meta Analysis  This is an R implementation of the web-based ‘Practical Meta-Analysis Effect Size Calculator’ from David B. Wilson. The original calculator can be found at http://www.campbellcollaboration.org/escalc/html/EffectSizeCalculator-Home.php.

Based on the input, the effect size can be returned as standardized mean difference (`d`), Cohen’s `f`, `eta` squared, Hedges’ `g`, correlation coefficient effect size `r` or Fisher’s transformation `z`, odds ratio or log odds effect size.

### Return values

The return value of all functions has the same structure:

• The effect size, whether being `d`, `g`, `r`, `f`, (Cox) odds ratios or (Cox) logits, is always named `es`.
• The standard error of the effect size, `se`.
• The variance of the effect size, `var`.
• The lower and upper confidence limits `ci.lo` and `ci.hi`.
• The weight factor, based on the inverse-variance, `w`.
• The total sample size `totaln`.
• The effect size measure, `measure`, which is typically specified via the `es.type`-argument.
• Information on the effect-size conversion, `info`.
• A string with the study name, if the `study`-argument was specified in function calls.

#### Correlation Effect Size

If the correlation effect size `r` is computed, the transformed Fisher’s z and their confidence intervals are also returned. The variance and standard error for the correlation effect size r are always based on Fisher’s transformation.

#### Odds Ratio Effect Size

For odds ratios, the variance and standard error are always returned on the log-scale!

### S3 methods

The esc package offers the S3 methods `print()` and `as.data.frame()`.

### Combining results into a single data frame

The `combine_esc()` method is a convenient way to create pooled data frames of different effect size calculations, for further use. Here is an example of `combine_esc()`, which returns a `data.frame` object.

``````library(esc)
e1 <- esc_2x2(grp1yes = 30, grp1no = 50, grp2yes = 40, grp2no = 45, study = "Study 1")
e2 <- esc_2x2(grp1yes = 30, grp1no = 50, grp2yes = 40, grp2no = 45, es.type = "or", study = "Study 2")
e3 <- esc_t(p = 0.03, grp1n = 100, grp2n = 150, study = "Study 3")
e4 <- esc_mean_sd(grp1m = 7, grp1sd = 2, grp1n = 50, grp2m = 9, grp2sd = 3, grp2n = 60, es.type = "logit",
study = "Study 4")

combine_esc(e1, e2, e3, e4)
#>     study      es weight sample.size     se     var    ci.lo   ci.hi measure
#> 1 Study 1 -0.3930  9.945         165 0.3171 0.10056 -1.01456  0.2285   logit
#> 2 Study 2  0.6750  9.945         165 0.3171 0.10056  0.36256  1.2567      or
#> 3 Study 3  0.2818 59.434         250 0.1297 0.01683  0.02755  0.5360       d
#> 4 Study 4 -1.3982  7.721         110 0.3599 0.12951 -2.10354 -0.6928   logit``````

esc is still under development, i.e. not all effect size computation options are implemented yet. The remaining options will follow in further updates.

## Installation

### Latest development build

To install the latest development snapshot (see latest changes below), type following commands into the R console:

``````library(githubinstall)
githubinstall::githubinstall("esc")``````

### Official, stable release

To install the latest stable release from CRAN, type following command into the R console:

``install.packages("esc")``

## Citation

In case you want / have to cite my package, please use `citation('esc')` for citation information. 