Determines the power, the non-centrality parameter, or the degrees of freedom for the generic t-Test with (optional) Type 1 and Type 2 error plots.
Usage
power.t.test(
power = NULL,
ncp = NULL,
req.sign = "+",
null.ncp = 0,
df = NULL,
alpha = 0.05,
alternative = c("two.sided", "one.sided", "two.one.sided"),
plot = TRUE,
verbose = 1,
utf = FALSE
)Arguments
- power
statistical power \((1 - \beta)\); either
power,ncpordfneeds to be NULL (and is then estimated).- ncp
non-centrality parameter for the alternative; ; either
power,ncpordfneeds to be NULL (and is then estimated).- req.sign
whether
ncpis expected to be greater '+1', less than '-1', or within '0' thenull.ncpbounds; only relevant ifncpis to be estimated.- null.ncp
non-centrality parameter for the null. When alternative = "two.one.sided", the function expects two values in the form
c(lower, upper). If a single value is provided, it is interpreted as the absolute bound and automatically expanded toc(-value, +value).- df
degrees of freedom; either
power,ncpordfneeds to be NULL (and is then estimated).- alpha
type 1 error rate, defined as the probability of incorrectly rejecting a true null hypothesis, denoted as \(\alpha\).
- alternative
character; the direction or type of the hypothesis test: "two.sided", "one.sided", or "two.one.sided". "two.one.sided" is used for equivalence and minimal effect testing.
- plot
logical;
FALSEswitches off Type 1 and Type 2 error plot.TRUEby default.- verbose
1by default (returns test, hypotheses, and results), if2a more detailed output is given (plus key parameters and definitions), if0no output is printed on the console.- utf
logical; whether the output should show Unicode characters (if encoding allows for it).
FALSEby default.
Value
- power
statistical power \((1-\beta)\).
- ncp
non-centrality parameter under alternative.
- null.ncp
non-centrality parameter under null.
- df
degrees of freedom.
- alpha
type 1 error rate (user-specified).
- t.alpha
critical value(s).
- beta
type 2 error rate.
- type.s
type S error rate (only for two-tailed test).
- type.m
type M error rate (only for two-tailed test).
Examples
# two-sided
# power defined as the probability of observing test statistics greater
# than the positive critical value OR less than the negative critical value
power.t.test(ncp = 1.96, df = 100, alpha = 0.05, alternative = "two.sided")
#> +--------------------------------------------------+
#> | POWER CALCULATION |
#> +--------------------------------------------------+
#>
#> Generic t-Test
#>
#> ----------------------------------------------------
#> Hypotheses
#> ----------------------------------------------------
#> H0 (Null) : lambda = null.lambda
#> H1 (Alternative) : lambda != null.lambda
#>
#> ----------------------------------------------------
#> Results
#> ----------------------------------------------------
#> Target NCP (lambda) = 1.960 (vs. null.lambda = 0)
#> Degrees of Freedom = 100
#> Type 1 Error (alpha) = 0.050
#> Type 2 Error (beta) = 0.507
#> Statistical Power = 0.493 <<
#>
power.t.test(power = 0.80, df = 100, alpha = 0.05, alternative = "two.sided")
#> +--------------------------------------------------+
#> | MINIMUM DETECTABLE NCP CALCULATION |
#> +--------------------------------------------------+
#>
#> Generic t-Test
#>
#> ----------------------------------------------------
#> Hypotheses
#> ----------------------------------------------------
#> H0 (Null) : lambda = null.lambda
#> H1 (Alternative) : lambda != null.lambda
#>
#> ----------------------------------------------------
#> Results
#> ----------------------------------------------------
#> Target NCP (lambda) = 2.829 (vs. null.lambda = 0) <<
#> Degrees of Freedom = 100
#> Type 1 Error (alpha) = 0.050
#> Type 2 Error (beta) = 0.200
#> Statistical Power = 0.800
#>
# one-sided
# power is defined as the probability of observing a test statistic greater
# than the critical value
power.t.test(ncp = 1.96, df = 100, alpha = 0.05, alternative = "one.sided")
#> +--------------------------------------------------+
#> | POWER CALCULATION |
#> +--------------------------------------------------+
#>
#> Generic t-Test
#>
#> ----------------------------------------------------
#> Hypotheses
#> ----------------------------------------------------
#> H0 (Null) : lambda <= null.lambda
#> H1 (Alternative) : lambda > null.lambda
#>
#> ----------------------------------------------------
#> Results
#> ----------------------------------------------------
#> Target NCP (lambda) = 1.960 (vs. null.lambda = 0)
#> Degrees of Freedom = 100
#> Type 1 Error (alpha) = 0.050
#> Type 2 Error (beta) = 0.381
#> Statistical Power = 0.619 <<
#>
power.t.test(power = 0.80, df = 100, alpha = 0.05, alternative = "one.sided")
#> +--------------------------------------------------+
#> | MINIMUM DETECTABLE NCP CALCULATION |
#> +--------------------------------------------------+
#>
#> Generic t-Test
#>
#> ----------------------------------------------------
#> Hypotheses
#> ----------------------------------------------------
#> H0 (Null) : lambda <= null.lambda
#> H1 (Alternative) : lambda > null.lambda
#>
#> ----------------------------------------------------
#> Results
#> ----------------------------------------------------
#> Target NCP (lambda) = 2.503 (vs. null.lambda = 0) <<
#> Degrees of Freedom = 100
#> Type 1 Error (alpha) = 0.050
#> Type 2 Error (beta) = 0.200
#> Statistical Power = 0.800
#>
# equivalence
# power is defined as the probability of observing a test statistic greater
# than the upper critical value (for the lower bound) AND less than the
# lower critical value (for the upper bound)
power.t.test(ncp = 0, null.ncp = c(-2, 2), df = 100, alpha = 0.05,
alternative = "two.one.sided")
#> +--------------------------------------------------+
#> | POWER CALCULATION |
#> +--------------------------------------------------+
#>
#> Generic t-Test
#>
#> ----------------------------------------------------
#> Hypotheses
#> ----------------------------------------------------
#> H0 (Null) : lambda <= min(null.lambda) or
#> lambda >= max(null.lambda)
#> H1 (Alternative) : lambda > min(null.lambda) and
#> lambda < max(null.lambda)
#>
#> ----------------------------------------------------
#> Results
#> ----------------------------------------------------
#> Target NCP (lambda) = 0 (vs. null.lambda = -2 and 2)
#> Degrees of Freedom = 100
#> Type 1 Error (alpha) = 0.050
#> Type 2 Error (beta) = 0.723
#> Statistical Power = 0.277 <<
#>
power.t.test(power = 0.80, req.sign = "0", null.ncp = c(-2, 2),
df = 100, alpha = 0.05, alternative = "two.one.sided")
#> Warning: The target power rate cannot be achieved within the null bounds.
#> +--------------------------------------------------+
#> | MINIMUM DETECTABLE NCP CALCULATION |
#> +--------------------------------------------------+
#>
#> Generic t-Test
#>
#> ----------------------------------------------------
#> Hypotheses
#> ----------------------------------------------------
#> H0 (Null) : lambda <= min(null.lambda) or
#> lambda >= max(null.lambda)
#> H1 (Alternative) : lambda > min(null.lambda) and
#> lambda < max(null.lambda)
#>
#> ----------------------------------------------------
#> Results
#> ----------------------------------------------------
#> Target NCP (lambda) = -0.000 (vs. null.lambda = -2 and 2) <<
#> Degrees of Freedom = 100
#> Type 1 Error (alpha) = 0.050
#> Type 2 Error (beta) = 0.723
#> Statistical Power = 0.277
#>
# minimal effect testing
# power is defined as the probability of observing a test statistic greater
# than the upper critical value (for the upper bound) OR less than the lower
# critical value (for the lower bound).
power.t.test(ncp = 2, null.ncp = c(-1, 1), df = 100, alpha = 0.05,
alternative = "two.one.sided")
#> +--------------------------------------------------+
#> | POWER CALCULATION |
#> +--------------------------------------------------+
#>
#> Generic t-Test
#>
#> ----------------------------------------------------
#> Hypotheses
#> ----------------------------------------------------
#> H0 (Null) : lambda >= min(null.lambda) and
#> lambda <= max(null.lambda)
#> H1 (Alternative) : lambda < min(null.lambda) or
#> lambda > max(null.lambda)
#>
#> ----------------------------------------------------
#> Results
#> ----------------------------------------------------
#> Target NCP (lambda) = 2 (vs. null.lambda = -1 and 1)
#> Degrees of Freedom = 100
#> Type 1 Error (alpha) = 0.050
#> Type 2 Error (beta) = 0.837
#> Statistical Power = 0.163 <<
#>
power.t.test(power = 0.80, req.sign = "+", null.ncp = c(-1, 1),
df = 100, alpha = 0.05, alternative = "two.one.sided")
#> +--------------------------------------------------+
#> | MINIMUM DETECTABLE NCP CALCULATION |
#> +--------------------------------------------------+
#>
#> Generic t-Test
#>
#> ----------------------------------------------------
#> Hypotheses
#> ----------------------------------------------------
#> H0 (Null) : lambda >= min(null.lambda) and
#> lambda <= max(null.lambda)
#> H1 (Alternative) : lambda < min(null.lambda) or
#> lambda > max(null.lambda)
#>
#> ----------------------------------------------------
#> Results
#> ----------------------------------------------------
#> Target NCP (lambda) = 3.864 (vs. null.lambda = -1 and 1) <<
#> Degrees of Freedom = 100
#> Type 1 Error (alpha) = 0.050
#> Type 2 Error (beta) = 0.200
#> Statistical Power = 0.800
#>