Default contrasts in ANOVA orthogonal?


I have a question regarding the default contrasts anova() uses R. As far as I understand, the default setting in anova is, that each group/treatment condition is compared to the baseline group.

If I assume we have three treatment conditions A, B and C, and A is my baseline, I can now write down the ''group-contrast-table'' in terms of groups and dummy variables:

C1 C1 | product
A -1 -1 | 1
B 1 0 | 0
C 0 1 | 0
0 0 1

Thus, these contrast are not orthogonal. Is this true? Where is my mistake?



Cookie Scientist
It's true that the contrasts you wrote do not comprise an orthogonal set. But these are not the default contrasts in R. The contrasts you wrote are usually called "effect codes" and they are implemented in R's contr.sum() function. The default is "dummy codes" which are implemented contr.treatment(). Dummy codes also do not comprise an orthogonal set because, while each dummy is orthogonal to all the other dummies, none of them are orthogonal to the intercept/constant term.
Thank you already. But why should I be worried about orthogonality of (self-defined) contrasts, if not even default contrasts in anova are orthogonal? Has this something to do with the qestion if comparisons/contrasts are chosen a priori or post hoc?


Cookie Scientist
Who said you should be "worried"? Orthogonality is a nice property because it entails that the contrasts are all estimating the linear combinations of group means that they appear to be estimating. When they are not orthogonal this is not true. But using non-orthogonal contrasts can still be okay as long as you do understand what is really being tested. For some sets of simple non-orthogonal codes, like dummy codes, this is pretty easy. For others it can be more confusing.