Learn R Programming

PowerTOST (version 1.5-6)

pvalue.TOST: p-value(s) of the TOST procedure

Description

Calculates the p-value(s) of the TOST procedure via students t-distribution given pe, CV and n.

Usage

pvalue.TOST(pe, CV, n, logscale = TRUE, theta1, theta2, design = "2x2", 
            robust = FALSE, both = FALSE)
pvalues.TOST(pe, CV, n, logscale = TRUE, theta1, theta2, design = "2x2", 
             robust = FALSE, both = TRUE)

Value

Returns the p-value(s).

Returns a vector with named elements p.left, p.right if arguments pe and CV

are scalars, else a matrix with columns p.left, p.right.

p.left gives the p-value of testing

HA1: theta >= theta1

and p.right the p-value of testing

HA2: theta <= theta2

against their respective Nulls.

Arguments

pe

Observed point estimate of the T/R ratio or difference.
In case of logscale=TRUE it must be given as ratio T/R.
If logscale=FALSE, the observed difference in means. In this case, the difference may be expressed in two ways: relative to the same (underlying) reference mean, i.e. as (T-R)/R = T/R - 1; or as difference in means T-R. Note that in the former case the units of CV, theta1 and theta2 need also be given relative to the reference mean (specified as ratio).

CV

In case of logscale=TRUE the observed (geometric) coefficient of variation given as ratio.
If logscale=FALSE the argument refers to the observed (residual) standard deviation of the response. In this case, standard deviation may be expressed two ways: relative to a reference mean (specified as ratio sigma/muR), i.e. again as a coefficient of variation; or untransformed, i.e. as standard deviation of the response. Note that in the former case the units of pe, theta1 and theta2 need also be given relative to the reference mean (specified as ratio).

In case of cross-over studies this is the within-subject CV, in case of a parallel-group design the CV of the total variability.

n

Total number of subjects if given as scalar.
Number of subjects in (sequence) groups if given as vector.

logscale

Should the data be used after log-transformation or on original scale?
TRUE or FALSE. Defaults to TRUE.

theta1

Lower (bio-)equivalence limit.
In case of logscale=TRUE it is given as ratio.
If logscale=FALSE, the limit may be expressed in two ways: difference of means relative to the same (underlying) reference mean or in units of the difference of means. Note that in the former case the units of CV, pe and theta2 need also be given relative to the reference mean (specified as ratio).
Defaults to 0.8 if logscale=TRUE or to -0.2 if logscale=FALSE.

theta2

Upper (bio-)equivalence limit.
In case of logscale=TRUE it is given as ratio. If logscale=FALSE, the limit may be expressed in two ways: difference of means relative to the same (underlying) reference mean or in units of the difference of means. Note that in the former case the units of CV, theta0 and theta1 need also be given relative to the reference mean (specified as ratio).
If not given, theta2 will be calculated as 1/theta1 if logscale=TRUE or as -theta1 if logscale=FALSE.

design

Character string describing the study design.
See known.designs() for designs covered in this package.

robust

If set to TRUE triggers the use of degrees of freedom according to the ‘robust’ evaluation (aka Senn’s basic estimator). These degrees of freedom are calculated as n-seq.
See known.designs()$df2. Has only effect for higher-order crossover designs.
Defaults to FALSE. With that value the usual degrees of freedom will be used.

both

Indicates if both p-values (t-tests of pe >= theta1 and pe <= theta2) shall be given back or only the maximum.
Defaults to FALSE for the function pvalue.TOST() and to TRUE for the function pvalues.TOST().

Author

B. Lang, man page by D. Labes

References

Schuirmann DJ. A comparison of the two one-sided tests procedure and the power approach for assessing the equivalence of average bioavailability. J Pharmacokin Biopharm. 1987;15:657--80. tools:::Rd_expr_doi("10.1007/BF01068419")

Hauschke D, Steinijans V, Pigeot I. Bioequivalence Studies in Drug Development. Chichester: Wiley; 2007.

See Also

CI.BE

Examples

Run this code
# Defaults: 2x2 crossover, log-transformation
# BE acceptance limits 0.8 ... 1.25, usual dfs
# interested in both p-values
pvalues.TOST(pe = 0.95, CV = 0.3, n = 12)
# gives the vector (named elements)
#     p.left    p.right
# 0.09105601 0.02250985
# i.e. 'left' hypothesis H01: theta<=theta1 can't be rejected
# 'right' hypothesis H02: theta>=theta2 can be rejected

# max. p-value only as 'overall' pvalue, preferred by Benjamin
pvalue.TOST(pe = 0.912, CV = 0.333, n = 24)
# should give 0.08777621, i.e., inequivalence can't be rejected
# this is operationally identical to 
CI.BE(pe = 0.912, CV = .333, n = 24)
# lower limit = 0.7766 outside 0.8 ... 1.25, i.e., inequivalence can't be rejected

Run the code above in your browser using DataLab