[R] Tukey's one degree of freedom for nonadditivity?
Spencer Graves
spencer.graves at pdf.com
Sat Apr 5 17:58:35 CEST 2003
Thanks very much for the solution and the reference.
Best Wishes,
Spencer Graves
p.s. Before I posted the question, I looked in Venables and Ripley and
checked the "R search site", among other things, to no avail. I just
wrote to Jonathan Baron, who maintains the "R search site", asking if it
might be feasible to include in his data base indices and tables of
contents from leading references. I would think that publishers would
see that as cheap advertising.
kjetil brinchmann halvorsen wrote:
> On 3 Apr 2003 at 12:11, Spencer Graves wrote:
>
> See the code copied below.
>
> Kjetil Halvorsen
>
> # From S-Plus: Guide to Statistical & Mathemathical
> # Analysis, page 11.25 slightly changed to function with R.
> tukey.1 <- function(aov.obj, data) {
> vnames <- names(aov.obj$contrasts)
> if(length(vnames) != 2)
> stop("The model must be two-way.")
> vara <- data[, vnames[1]]
> varb <- data[, vnames[2]]
> na <- length(levels(vara))
> nb <- length(levels(varb))
> where.resp <- as.character(attr(aov.obj$terms,
> "variables")[-1][attr(aov.obj$terms, "response" )])
> resp <- data[, where.resp]
> cfs <- coef(aov.obj)
> alpha.A <- aov.obj$contrasts[[vnames[1]]] %*%
> cfs[aov.obj$assign[aov.obj$assign==1]]
> alpha.B <- aov.obj$contrasts[[vnames[2]]] %*%
> cfs[aov.obj$assign[aov.obj$assign==2]]
> r.mat <- matrix(0, nb, na)
> r.mat[cbind(as.vector(unclass(varb)), as.vector(
> unclass(vara)))] <- resp
> SS.theta.num <- sum((alpha.B %*% t(alpha.A)) *
> r.mat)^2
> SS.theta.den <- sum(alpha.A^2) * sum(alpha.B^2)
> SS.theta <- SS.theta.num / SS.theta.den
> SS.res <- sum(resid(aov.obj)^2)
> SS.res.1 <- SS.res - SS.theta
> T.1df <- ((na * nb -na -nb) * SS.theta)/SS.res.1
> p.value <- 1 - pf(T.1df, 1, na*nb - na -nb)
> list(T.1df = T.1df, p.value = p.value)
> }
>
>
>
>
>> Is there code available to decompose interactions involving at least
>>one nominal factor with more than 2 levels as described, e.g., by Tukey
>>or by Mandel (1971, Technometrics, 13: 1-18)?
>>
>> Tukey's model:
>>
>> E(y[i,j]) = mu0 + a[i] + b[j] + c*a[i]*b[j],
>>
>>estimating a, b, and c so sum(a) = sum(b)= 0. Mandel essentially
>>describes a singular value decomposition of the interaction.
>>
>>Thanks,
>>Spencer Graves
>>
>>______________________________________________
>>R-help at stat.math.ethz.ch mailing list
>>https://www.stat.math.ethz.ch/mailman/listinfo/r-help
>
>
>
>
More information about the R-help
mailing list