Description Usage Arguments Details Value References Examples
View source: R/retrospective.R
Given the hypothetical population effect size and study sample size, the
function retrospective()
performs a retrospective design analysis for
Cohen's d (t-test comparing group means) or Pearson's
correlation test between two variables. According to the defined alternative
hypothesis and significance level, inferential errors (i.e., Power level,
Type-M error, and Type-S error) are computed together with the the critical
effect value (i.e., the minimum absolute effect size value that would result
significant).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
effect_size |
a numeric value or function (see details) indicating the hypothetical population effect size. |
sample_n1 |
a numeric value indicating the sample size of the first group. |
sample_n2 |
an optional numeric value indicating the sample size of the second group. |
effect_type |
a character string specifying the effect type, must be "cohen_d" (default, Cohen's d standardised means difference) or "pearson" (Pearson's correlation). You can specify just the initial letter. |
alternative |
a character string specifying the alternative hypothesis, must be one of "two.sided" (default), "greater" or "less". You can specify just the initial letter. |
sig_level |
a numeric value indicating the significance level on which the alternative hypothesis is evaluated. |
B |
a numeric value indicating the number of iterations. Increase the number of iterations to obtain more stable results. |
seed |
a numeric value indicating the seed for random number generation. Set the seed to obtain results reproducible. |
tl |
optional value indicating the lower truncation point if
|
tu |
optional value indicating the upper truncation point if
|
B_effect |
a numeric value indicating the number of sampled effect size
if |
... |
further arguments to be passed to or from methods. |
Conduct a retrospective design analysis to evaluate inferential risks
according to study design. A general overview is provided in the
vignette(todo)
.
Population effect size
The hypothetical population effect size (effect_size
) can be set to a
single value or a function that allows to sample values from a given
distribution. The function has to be defined as function(x)
my_function(x, ...)
, with only one single variable x
that represent
the number of samples (e.g., function(x) rnorm(x, mean = 0, sd = 1)
;
function(x) sample(c(.1,.3,.5), x, replace = TRUE)
). This allows
users to define hypothetical effect size distribution according to their
needs.
Argument B_effect
allows to define the number of sampled effect size.
Users can access sampled effects in the effect_info
list included in
the output to evaluate if sample is representative of their specification.
Increase the number to obtain more accurate results but it will require more
computational time (default is 250).
Optional arguments tl
and tu
allow to truncate the sampling
distribution specifying the lower truncation point and upper truncation
point respectively. Note that if effect_type = "correlation"
,
distribution is automatically truncated between -1 and 1.
Effect type options
The effect_type
argument can be set to "cohen_d"
(default) for
standardized mean difference or "correlation"
if Pearson's
correlation is evaluated.
In the case of "cohen_d"
one-sample or two-samples t-test are
considered following same options specification of basic function
t.test()
, note that default options of t.test()
are paired
= FALSE
and var.equal = FALSE
. For one-sample t-test only
sample_n1
is specified and sample_n2 = NULL
is required. For
paired t-test sample_n1
and sample_n2
needs to be
identical and option paired = TRUE
is required. For two-samples
t-test sample_n1
and sample_n2
can differ and option
var.equal = TRUE
is required. For Welch t-test, only
sample_n1
and sample_n2
are required (default option is
var.equal = FALSE
).
In the case of "correlation"
, only Pearson's correlation between two
variables is available and sample_n2
argument is ignored. The
Kendall's tau or Spearman's rho are not implemented.
Study design
Study design can be further defined according to statistical test
directionality and required α-level using the arguments
alternative
and sig_level
respectively.
A list with class "design_analysis" containing the following components:
design_analysis |
a character string indicating the type of design analysis: "retrospective". |
call_arguments |
a list with all the arguments passed to the function. |
effect_info |
a list with all the information regarding the
considered hypothetical population effect size. The list includes:
|
test_info |
a list with all the information regarding the test
performed. The list includes: |
retrospective_res |
a data frame with the resulting inferential
errors. Columns names are |
Altoè, G., Bertoldo, G., Zandonella Callegher, C., Toffalini, E., Calcagnì, A., Finos, L., & Pastore, M. (2020). Enhancing Statistical Inference in Psychological Research via Prospective and Retrospective Design Analysis. Frontiers in Psychology, 10. https://doi.org/10.3389/fpsyg.2019.02893
Gelman, A., & Carlin, J. (2014). Beyond Power Calculations: Assessing Type S (Sign) and Type M (Magnitude) Errors. Perspectives on Psychological Science, 9(6), 641–651. https://doi.org/10.1177/1745691614551642
Bertoldo, G., Altoè, G., & Zandonella Callegher, C. (2020, June 15). Designing Studies and Evaluating Research Results: Type M and Type S Errors for Pearson Correlation Coefficient. Retrieved from https://psyarxiv.com/q9f86/
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | # One-sample t-test
retrospective(effect_size = .3, sample_n1 = 25, sample_n2 = NULL,
effect_type = "cohen_d", seed = 2020)
# Paired t-test
retrospective(effect_size = .3, sample_n1 = 25, sample_n2 = 25,
effect_type = "cohen_d", paired = TRUE, seed = 2020)
# Two-samples t-test
retrospective(effect_size = .3, sample_n1 = 25, sample_n2 = 35,
effect_type ="cohen_d", var.equal = TRUE, seed = 2020)
# Welch t-test
retrospective(effect_size = .3, sample_n1 = 25, sample_n2 = 35,
effect_type ="cohen_d", seed = 2020)
# Pearson's correlation
retrospective(effect_size = .3, sample_n1 = 25, effect_type = "correlation",
seed = 2020)
## Not run:
# Define effect_size using functions (long computational time)
retrospective(effect_size = function(x) rnorm(x, .3, .1), sample_n1 = 25,
effect_type = "correlation", seed = 2020)
retrospective(effect_size = function(x) rnorm(x, .3, .1), sample_n1 = 25,
effect_type = "cohen_d", tl = .2, tu = .4, seed = 2020)
## End(Not run)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.