Peter Dalgaard <p.dalgaard@biostat.ku.dk> writes:
Bela Bauer <bela_b@gmx.net> writes:
Hi, I'm still not quite there with my H-F (G-G) correction code. I have it working for the main effects, but I just can't figure out how to do it for the effect interactions. The thing I really don't know (and can't find anything about) is how to calculate the covariance matrix for the interaction between the two (or even n) main factors. I've looked through some books here and I've tried everything that came to my mind, but I can't seem to be able to figure out an algorithm that does it for me. Could anyone give me a hint about how I could do this? (I'll append my code at the end, in case that helps in any way...)
I have given it to you before: My plan is to drop the explicit formula involving on/off diagonal elements of S and go directly at Box (1954), theorems 3.1 and 6.1, involving eigenvalues of TST', where T is the relevant residual operator. In the case where one of the factors have only two levels, I believe you just take differences and use the usual formula, but more than two levels is tricky.
[moved to r-devel since this is getting technical]
Now I am getting confused: I can reproduce the G-G epsilon in all the
cases I have tried but the H-F epsilon eludes me. Consider this SAS
code
proc glm;
model bmc1-bmc7= / nouni;
repeated visit 7/printe;
This ends up with
Greenhouse-Geisser Epsilon 0.6047
Huynh-Feldt Epsilon 0.7466
This makes OK sense since there are 22 observations
(22*6*0.6047 -2)/(6*(21-6*.6047))
[1] 0.7466162
However, consider the following small change:
proc glm;
class grp;
model bmc1-bmc7= grp / nouni;
repeated visit 7/printe;
Now I get
Greenhouse-Geisser Epsilon 0.6677
Huynh-Feldt Epsilon 0.8976
Since we have one less DF for the covariance matrix, I would expect
that the H-F epsilon would be
(21*6*0.6677)/(6*(20-6*.6677))
[1] 0.876696
The discrepancy gets worse as more covariates are added. If bmc1 is
moved to the rhs, I get
Greenhouse-Geisser Epsilon 0.6917
Huynh-Feldt Epsilon 0.9533
Where I would have expected
(20*5*0.6917-2)/(5*(19-5*.6917))
[1] 0.8643953 Does anyone have a clue as to what is going on here? Is mighty SAS simply doing the wrong thing? The G-G epsilon depends only on the eigenvalues of the observed covariance matrix, so surely the H-F correction should depend only on the dimension and the DF for the empirical covariance matrix?
O__ ---- Peter Dalgaard Blegdamsvej 3 c/ /'_ --- Dept. of Biostatistics 2200 Cph. N (*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918 ~~~~~~~~~~ - (p.dalgaard@biostat.ku.dk) FAX: (+45) 35327907