SimTestDiff {SimComp} | R Documentation |
Simultaneous Tests for General Contrasts (Differences) of Means of Multiple Endpoints
Description
Simultaneous tests for general contrasts (linear functions) of normal means (e.g., "Dunnett", "Tukey", "Williams" ect.), and for single or multiple endpoints (primary response variables) simultaneously. The procedure of Hasler and Hothorn (2011) <doi:10.2202/1557-4679.1258> is applied for differences of means of normally distributed data. The variances/ covariance matrices of the treatment groups (containing the covariances between the endpoints) may be assumed to be equal or possibly unequal for the different groups (Hasler, 2014 <doi:10.1515/ijb-2012-0015>). For the case of only a single endpoint and unequal covariance matrices (variances), the procedure coincides with the PI procedure of Hasler and Hothorn (2008) <doi:10.1002/bimj.200710466>.
Usage
## Default S3 method:
SimTestDiff(data, grp, resp = NULL, na.action = "na.error", type = "Dunnett",
base = 1, ContrastMat = NULL, alternative = "two.sided", Margin = 0,
covar.equal = FALSE, CorrMatDat = NULL, ...)
## S3 method for class 'formula'
SimTestDiff(formula, ...)
Arguments
data |
a data frame containing a grouping variable and the endpoints as columns |
grp |
a character string with the name of the grouping variable |
resp |
a vector of character strings with the names of the endpoints; if
|
formula |
a formula specifying a numerical response and a grouping factor (e.g. response ~ treatment) |
na.action |
a character string indicating what should happen when the data
contain |
type |
a character string, defining the type of contrast, with the following options:
note that |
base |
a single integer specifying the control group for Dunnett contrasts, ignored otherwise |
ContrastMat |
a contrast matrix, where columns correspond to groups and rows correspond to contrasts |
alternative |
a character string specifying the alternative hypothesis,
must be one of |
Margin |
a single numeric value, or a numeric vector corresponding to endpoints, or a matrix where columns correspond to endpoints and rows correspond to contrasts |
covar.equal |
a logical variable indicating whether to treat the variances/
covariance matrices of the treatment groups (containing the
covariances between the endpoints) as being equal;
if |
CorrMatDat |
a correlation matrix of the endpoints, if |
... |
arguments to be passed to SimTestDiff.default |
Details
The interest is in simultaneous tests for several linear combinations (contrasts) of
treatment means in a one-way ANOVA model, and for single or multiple endpoints
simultaneously. For example, the all-pair comparison of Tukey (1953) and the many-
to-one comparison of Dunnett (1955) are implemented, but allowing for
heteroscedasticity and multiple endpoints. The user is also free to create other
interesting problem-specific contrasts. Approximate multivariate t-
distributions are used to calculate (adjusted) p-values (Hasler and Hothorn,
2011 <doi:10.2202/1557-4679.1258>). This approach controls the familywise error rate
in admissible ranges and in the strong sense. The variances/ covariance matrices of
the treatment groups (containing the covariances between the endpoints) can be
assumed to be equal (covar.equal=TRUE
) or unequal (covar.equal=FALSE
).
If being equal, the pooled variance/ covariance matrix is used, otherwise
approximations to the degrees of freedom (Satterthwaite, 1946) are used (Hasler,
2014 <doi:10.1515/ijb-2012-0015>; Hasler and Hothorn, 2008
<doi:10.1002/bimj.200710466>). Unequal covariance matrices occure if variances or
correlations of some endpoints differ depending on the treatment groups.
Value
An object of class SimTest containing:
estimate |
a matrix of estimated differences |
statistic |
a matrix of the calculated test statistics |
p.val.raw |
a matrix of raw p-values |
p.val.adj |
a matrix of p-values adjusted for multiplicity |
CorrMatDat |
if not prespecified by |
CorrMatComp |
the estimated correlation matrix of the comparisons |
degr.fr |
a matrix of degrees of freedom |
Note
By default (na.action="na.error"
), the procedure stops if there are
missing values. A new experimental version for missing values is used if
na.action="multi.df"
. If covar.equal=TRUE
, the number of endpoints
must not be greater than the total sample size minus the number of treatment
groups. If covar.equal=FALSE
, the number of endpoints must not be greater
than the minimal sample size minus 1. Otherwise the procedure stops.
All hypotheses are tested with the same test direction for all comparisons and
endpoints (alternative="..."
). In case of doubt, use "two.sided"
.
If Margin
is a single numeric value or a numeric vector, then the same
value(s) are used for the remaining comparisons or endpoints.
Author(s)
Mario Hasler
References
Hasler, M. and Hothorn, L.A. (2018): Multi-arm trials with multiple primary endpoints and missing values. Statistics in Medicine 37, 710–721, <doi:10.1002/sim.7542>.
Hasler, M. (2014): Multiple contrast tests for multiple endpoints in the presence of heteroscedasticity. The International Journal of Biostatistics 10, 17–28, <doi:10.1515/ijb-2012-0015>.
Hasler, M. and Hothorn, L.A. (2011): A Dunnett-type procedure for multiple endpoints. The International Journal of Biostatistics 7, Article 3, <doi:10.2202/1557-4679.1258>.
Hasler, M. and Hothorn, L.A. (2008): Multiple contrast tests in the presence of heteroscedasticity. Biometrical Journal 50, 793–800, <doi:10.1002/bimj.200710466>.
See Also
SimCiDiff
, SimTestRat
,
SimCiRat
Examples
# Example 1:
# A comparison of the groups B and H against the standard S, for endpoint
# Thromb.count, assuming unequal variances for the groups. This is an
# extension of the well-known Dunnett-test to the case of heteroscedasticity.
data(coagulation)
comp1 <- SimTestDiff(data=coagulation, grp="Group", resp="Thromb.count",
type="Dunnett", base=3, alternative="greater", covar.equal=FALSE)
comp1
# Example 2:
# A comparison of the groups B and H against the standard S, simultaneously
# for all endpoints, assuming unequal covariance matrices for the groups. This is
# an extension of the well-known Dunnett-test to the case of heteroscedasticity
# and multiple endpoints.
data(coagulation)
comp2 <- SimTestDiff(data=coagulation, grp="Group", resp=c("Thromb.count","ADP","TRAP"),
type="Dunnett", base=3, alternative="greater", covar.equal=FALSE)
summary(comp2)