
Convert Between Causal Effect Size Metrics
effect_size_convert.RdConverts between common effect size representations used in causal inference and applied statistics: unstandardized coefficients, Cohen's d, Cohen's f², partial eta², odds ratios, log-odds, Number Needed to Treat (NNT), risk ratios, and percent changes.
Usage
effect_size_convert(
value,
from = "cohens_d",
to = NULL,
sd_outcome = 1,
sd_treatment = 1,
baseline_risk = 0.1,
verbose = TRUE
)Arguments
- value
Numeric. The effect size value to convert from.
- from
Character. Input metric. One of:
"unstd"(raw coefficient),"cohens_d","cohens_f2","eta2","or"(odds ratio),"log_or"(log odds ratio),"rr"(risk ratio),"rd"(risk difference),"nnt"(number needed to treat),"pct_change".- to
Character or character vector. Output metric(s). Same choices as
from. Default: all available metrics.- sd_outcome
Numeric. Standard deviation of the outcome. Required for converting to/from unstandardized. Default
1.- sd_treatment
Numeric. SD of the treatment. Required for some conversions. Default
1.- baseline_risk
Numeric. Baseline risk P(Y=1 | D=0) for binary outcome conversions. Default
0.1.- verbose
Logical. Print interpretation. Default
TRUE.
Value
A named numeric vector of converted effect sizes, or a data frame with interpretation guidelines.
Examples
# Convert Cohen's d = 0.3 to NNT, risk difference, etc.
effect_size_convert(
value = 0.3,
from = "cohens_d",
to = c("nnt", "rd", "pct_change")
)
#> Effect size conversion: from cohens_d = 0.3
#>
#> NNT = 11.1 (treat 11.1 people to prevent 1 event)
#> Risk difference = 0.0900 (9.00%)
#> Percent change = 30.00%
# Convert regression coefficient to standardized metrics
effect_size_convert(
value = 5.2,
from = "unstd",
sd_outcome = 15.3
)
#> Effect size conversion: from unstd = 5.2
#>
#> Cohen's d = 0.3399 (small effect)
#> cohens_f2 = 0.103550
#> eta2 = 0.028067
#> OR = 1.8523
#> log_or = 0.616455
#> RR = 2.0196
#> Risk difference = 0.1020 (10.20%)
#> NNT = 9.8 (treat 9.8 people to prevent 1 event)
#> Percent change = 33.99%