G'day Michael, On Fri, 15 Oct 2010 12:09:07 +0100 Michael Hopkins <hopk...@upstreamsystems.com> wrote:
> OK, my last question didn't get any replies so I am going to try and > ask a different way. > > When I generate contrasts with contr.sum() for a 3 level categorical > variable I get the 2 orthogonal contrasts: > > > contr.sum( c(1,2,3) ) > [,1] [,2] > 1 1 0 > 2 0 1 > 3 -1 -1 These two contrasts are *not* orthogonal. > This provides the contrasts <1-3> and <2-3> as expected. But I also > want it to create <1-2> (i.e. <1-3> - <2-3>). So in general I want > all possible orthogonal contrasts - think of it as the contrasts for > all pairwise comparisons between the levels. You have to decide what you want. The contrasts for all pairwise comparaisons between the levels or all possible orthogonal contrasts? The latter is actually not well defined. For a factor with p levels, there would be p orthogonal contrasts, which are only identifiable up to rotation, hence infinitely many such sets. But there are p(p-1) pairwise comparisons. So unless p=2, yo have to decide what you want.... > Are there are any options for contrast() or other functions/libraries > that will allow me to do this automatically? Look at package multcomp, in particular functions glht and mcp, these might help. Cheers, Berwin ========================== Full address ============================ Berwin A Turlach Tel.: +61 (8) 6488 3338 (secr) School of Maths and Stats (M019) +61 (8) 6488 3383 (self) The University of Western Australia FAX : +61 (8) 6488 1028 35 Stirling Highway Crawley WA 6009 e-mail: ber...@maths.uwa.edu.au Australia http://www.maths.uwa.edu.au/~berwin ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.