Christoph Buser
2005-Apr-01 11:14 UTC
[Rd] simtest with lm object: depends on order in formula
Hi I used the simtest function from the package multcomp. When using simtest with an lm object, it seems to depend on the order of the variables in the formula. See the code for an example: library(multcomp) set.seed(1) # response y <- rnorm(21) # one factor f1 <- factor(c(rep(c("A", "B", "C"), 7))) # and one continuous covariable x <- rnorm(21) testdata <- cbind(as.data.frame(y), f1, x) # the same model, just change the order in the formula reg1 <- lm(y ~ x + f1, data=testdata) reg2 <- lm(y ~ f1 + x, data=testdata) summary(simtest(reg1))> Coefficients: > Estimate t value Std.Err. p raw p Bonf p adj > (Intercept) 0.427 -1.670 0.347 0.113 0.453 0.307 > x 0.295 -0.599 0.256 0.557 1.000 0.848 > f1B 0.204 -0.406 0.503 0.690 1.000 0.866 > f1C 0.089 -0.255 0.493 0.802 1.000 0.866summary(simtest(reg2))> Coefficients: > Estimate t value Std.Err. p raw p Bonf p adj > (Intercept) 0.427 -1.670 0.347 0.113 0.453 0.307 > f1B 0.295 -0.599 0.503 0.557 1.000 0.848 > f1C 0.204 -0.406 0.493 0.690 1.000 0.866 > x 0.089 -0.255 0.256 0.802 1.000 0.866The tabular is fix, but the names of the variables are permutated, maybe a bug in extracting the formula from the lm object. You can avoid the problem by using a formula instead of an lm object, but in the help is mentioned that simtest works with an lm object, too. Regards, Christoph Buser -------------------------------------------------------------- Christoph Buser <buser@stat.math.ethz.ch> Seminar fuer Statistik, LEO C11 ETH (Federal Inst. Technology) 8092 Zurich SWITZERLAND phone: x-41-1-632-5414 fax: 632-1228 http://stat.ethz.ch/~buser/
Torsten Hothorn
2005-Apr-01 11:30 UTC
[Rd] Re: simtest with lm object: depends on order in formula
On Fri, 1 Apr 2005, Christoph Buser wrote:> Hi > > I used the simtest function from the package multcomp. When > using simtest with an lm object, it seems to depend on the order > of the variables in the formula. See the code for an example: > > library(multcomp) > set.seed(1) > # response > y <- rnorm(21) > # one factor > f1 <- factor(c(rep(c("A", "B", "C"), 7))) > # and one continuous covariable > x <- rnorm(21) > testdata <- cbind(as.data.frame(y), f1, x) > > # the same model, just change the order in the formula > reg1 <- lm(y ~ x + f1, data=testdata) > reg2 <- lm(y ~ f1 + x, data=testdata) > summary(simtest(reg1)) > > Coefficients: > > Estimate t value Std.Err. p raw p Bonf p adj > > (Intercept) 0.427 -1.670 0.347 0.113 0.453 0.307 > > x 0.295 -0.599 0.256 0.557 1.000 0.848 > > f1B 0.204 -0.406 0.503 0.690 1.000 0.866 > > f1C 0.089 -0.255 0.493 0.802 1.000 0.866 > summary(simtest(reg2)) > > Coefficients: > > Estimate t value Std.Err. p raw p Bonf p adj > > (Intercept) 0.427 -1.670 0.347 0.113 0.453 0.307 > > f1B 0.295 -0.599 0.503 0.557 1.000 0.848 > > f1C 0.204 -0.406 0.493 0.690 1.000 0.866 > > x 0.089 -0.255 0.256 0.802 1.000 0.866 > > The tabular is fix, but the names of the variables are > permutated, maybe a bug in extracting the formula from the lm > object. > You can avoid the problem by using a formula instead of an lm > object, but in the help is mentioned that simtest works with an > lm object, too.you are right, thanks for the hint! Torsten> > > Regards, > > Christoph Buser > > -------------------------------------------------------------- > Christoph Buser <buser@stat.math.ethz.ch> > Seminar fuer Statistik, LEO C11 > ETH (Federal Inst. Technology) 8092 Zurich SWITZERLAND > phone: x-41-1-632-5414 fax: 632-1228 > http://stat.ethz.ch/~buser/ > -------------------------------------------------------------- > >