GitHub

Project Status: Active – The project has reached a stable, usable state and is being actively developed. CRAN status AppVeyor build status

Codecov test coverage DOI


{PRDA} allows performing a prospective or retrospective design analysis to evaluate inferential risks (i.e., power, Type M error, and Type S error) in a study considering Pearson’s correlation between two variables or mean comparisons (one-sample, paired, two-sample, and Welch’s t-test).

For an introduction to design analysis and a general overview of the package see vignette("PRDA"). Examples for retrospective design analysis and prospective design analysis are provided in vignette("retrospective") and vignette("prospective") respectively.

All the documentation is available at https://claudiozandonella.github.io/PRDA/.

Installation

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

install.packages("PRDA")

And the development version from GitHub with:

# install.packages("devtools")
devtools::install_github("ClaudioZandonella/PRDA",
                         build_vignettes = TRUE)

The Package

{PRDA} package can be used for Pearson’s correlation between two variables or mean comparisons (i.e., one-sample, paired, two-sample, and Welch’s t-test) considering an hypothetical value of ρ or Cohen’s d respectively. See vignette("retrospective") and vignette("prospective") to know how to set function arguments for the different effect types.

Functions

In {PRDA} there are two main functions retrospective() and prospective().

retrospective()

Given the hypothetical population effect size and the study sample size, the function retrospective() performs a retrospective design analysis. According to the defined alternative hypothesis and the significance level, the inferential risks (i.e., Power level, Type M error, and Type S error) are computed together with the critical effect value (i.e., the minimum absolute effect size value that would result significant).

Consider a study that evaluated the correlation between two variables with a sample of 30 subjects. Suppose that according to the literature the hypothesized effect is ρ = .25. To evaluate the inferential risks related to the study we use the function retrospective().

set.seed(2020) # set seed to make results reproducible
retrospective(effect_size = .25, sample_n1 = 30,
              test_method = "pearson")
#> 
#>  Design Analysis
#> 
#> Hypothesized effect:  rho = 0.25 
#> 
#> Study characteristics:
#>    test_method   sample_n1   sample_n2   alternative   sig_level   df
#>    pearson       30          NULL        two_sided     0.05        28
#> 
#> Inferential risks:
#>    power   typeM   typeS
#>    0.27    1.826   0.003
#> 
#> Critical value(s): rho  =  ± 0.361

In this case, the statistical power is almost 30% and the associated Type M error and Type S error are respectively around 1.80 and 0.003. That means, statistical significant results are on average an overestimation of 80% of the hypothesized population effect and there is a .3% probability of obtaining a statistically significant result in the opposite direction.

To know more about function arguments and further examples see the function documentation ?retrospective and vignette("retrospective").

prospective()

Given the hypothetical population effect size and the required power level, the function prospective() performs a prospective design analysis. According to the defined alternative hypothesis and the significance level, the required sample size is computed together with the associated Type M error, Type S error, and the critical effect value (i.e., the minimum absolute effect size value that would result significant).

Consider a study that will evaluate the correlation between two variables. Knowing from the literature that we expect an effect size of ρ = .25, the function prospective() can be used to compute the required sample size to obtain a power of 80%.

prospective(effect_size = .25, power = .80, test_method = "pearson",
            display_message = FALSE)
#> 
#>  Design Analysis
#> 
#> Hypothesized effect:  rho = 0.25 
#> 
#> Study characteristics:
#>    test_method   sample_n1   sample_n2   alternative   sig_level   df 
#>    pearson       122         NULL        two_sided     0.05        120
#> 
#> Inferential risks:
#>    power   typeM   typeS
#>    0.797   1.119   0    
#> 
#> Critical value(s): rho  =  ± 0.178

The required sample size is

Read the original on github.com ↗