R code for working our critical t statistics, td for Dunnett's test

This agrees with Howell's td appendix e.g.

install.packages("MCPMod")
library(MCPMod)
critVal(CM,n=4,alpha=0.025)

gives 2.6860 which is the td value in Howell for an alpha of 0.05, 4 treatment means (including the control) and an error df = 12 (=Nk - k = 4 x 4 - 4 = 12) for N people per group and k groups which corresponds to the error degrees of freedom for a between subjects ANOVA. The error df for a repeated measures ANOVA can be used by judicious choice of the group sizes so that Nk-k or the sum of the group sizes - k = the error df from the repeated measures ANOVA or, equivalently, the sum of the group sizes = error df + k.

Examples

# Calculation of critical value for Dunnett test

# Set up contrast matrix (3 active doses)

CM <- rbind(-1,diag(3))

# 30 patients per group, one-sided alpha 0.05

critVal(CM, n=30, alpha = 0.05)

# Example from R News 1(2) p. 28, 29

CM <- c(1, 1, 1, 0, 0, -1, 0, 0, 1, 0, 0, -1, 0, 0,
       1, 0, 0, 0, -1, -1, 0, 0, -1, 0, 0)
CM <- t(matrix(CM, ncol = 5))
critVal(CM, n=c(26, 24, 20, 33, 32), alpha = 0.05, 
    twoSide = TRUE)


Results

R version 2.11.1 (2010-05-31)

Copyright (C) 2010 The R Foundation for Statistical Computing

ISBN 3-900051-07-0

R is free software and comes with ABSOLUTELY NO WARRANTY.

You are welcome to redistribute it under certain conditions.

Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.

Type 'contributors()' for more information and

'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or

'help.start()' for an HTML browser interface to help.

Type 'q()' to quit R.

> library(MCPMod)
> png(filename="critVal_%03d_med.png", width=480, height=480)
> ### Name: critVal
> ### Title: Calculate critical value for multiple contrast test
> ### Aliases: critVal
> ### Keywords: htest design
> 
> ### ** Examples
> 
> # Calculation of critical value for Dunnett test
> # Set up contrast matrix (3 active doses)
> CM <- rbind(-1,diag(3))
> # 30 patients per group, one-sided alpha 0.05
> critVal(CM, n=30, alpha = 0.05)

[1] 2.084034

> # Example from R News 1(2) p. 28, 29
> CM <- c(1, 1, 1, 0, 0, -1, 0, 0, 1, 0, 0, -1, 0, 0,
+        1, 0, 0, 0, -1, -1, 0, 0, -1, 0, 0)
> CM <- t(matrix(CM, ncol = 5))
> critVal(CM, n=c(26, 24, 20, 33, 32), alpha = 0.05, 
+     twoSide = TRUE)

[1] 2.560253

null device