From Thorn.Thaler at rdls.nestle.com  Mon Mar 19 15:44:37 2012
From: Thorn.Thaler at rdls.nestle.com (Thaler,Thorn,LAUSANNE,Applied Mathematics)
Date: Mon, 19 Mar 2012 15:44:37 +0100
Subject: [Rd] Design choice of plot.design for formulas
Message-ID: <F54EF8F1B477CF448729593FE421F646714F9B@HQVEVE0032.nestle.com>

Dear all,

Today I figured out that the formula interface of plot.design is kind of
counter intuitive. Suppose the following setting

ddf <- expand.grid(a=factor(1:3), b=factor(1:3))
ddf$y <- rnorm(9)
plot.design(y ~ a + b, data=ddf)

which does what it should do, basically printing the means for the
respective levels of the factors. I had to learn that the function does
not care at all whether I specify a variable at the LHS or the RHS of
the formula. Thus, the following commands are all equivalent

plot.design(~ y + a + b, data=ddf)
plot.design(a ~ y + b, data=ddf)
plot.design(b ~ y + a, data=ddf)

A closer look into the code revealed that the function basically looks
whether a variable is numeric or a factor. All factors are supposed to
be stratification factors, while all numerical variables are supposed to
be responses. While the former assumption makes sense, the latter is
misleading in conjunction with the formula interface:

ddf$z <- sample(3, 9, TRUE)
plot.design(y ~ a + z, data=ddf)

In my reading that should produce a plot where a and z are regarded as
stratification factors, while y is the response. Instead the function
regards y and z as responses.

So my question: is there a particular reason why the formatting of a
variable in a data frame (factor vs. numerical) takes precedence over
the specification in the formula interface of plot.design? Is it the
case that one cannot specify multiple responses otherwise? In this case,
I was wondering whether an approach like in lattice where one can
specify multiple responses would be useful:

ddf$y.new <- rnorm(9)
lattice:::xyplot(y + y.new ~ a, data = ddf, pch = 15) 

Thanks for your feedback.

Kind regards,

-Thorn



[Rd] Design choice of plot.design for formulas
Thaler,Thorn,LAUSANNE,Applied Mathematics