[R] About the interaction A:B
Gabor Grothendieck
ggrothendieck at gmail.com
Fri Mar 5 15:45:22 CET 2010
The way to understand this is to look at the output of model.matrix:
model.matrix(fo, fr)
for each formula you tried. If your data is large you will have to
use a subset not to be overwhelmed with output.
On Fri, Mar 5, 2010 at 9:08 AM, blue sky <bluesky315 at gmail.com> wrote:
> Suppose, 'fr' is data.frame with columns 'Y', 'A' and 'B'. 'A' has levels 'Aa'
> 'Ab' and 'Ac', and 'B' has levels 'Ba', 'Bb', 'Bc' and 'Bd'. 'Y'
> columns are numbers.
>
> I tried the following three sets of commands. I understand that A*B is
> equivalent to A+B+A:B. However, A:B in A+B+A:B is different from A:B
> just by itself (see the 3rd and 4th set of commands). Would you please
> help me understand why the meanings of A:B are different in different
> contexts?
>
> I also see the coefficient of AAc:BBd is NA (the last set of
> commands). I'm wondering why this coefficient is not removed from the
> 'coefficients' vector. Since lm(Y~A) has coefficients for (intercept),
> Ab, Ac (there are no NA's), I think that it is reasonable to make sure
> that there are no NA's when there are interaction terms, namely, A:B
> in this case.
>
> Thank you for answering my questions!
>
>> alm=lm(Y ~ A*B,fr)
>> alm$coefficients
> (Intercept) AAb AAc BBb BBc BBd
> -3.548176 -2.086586 7.003857 4.367800 11.887356 -3.470840
> AAb:BBb AAc:BBb AAb:BBc AAc:BBc AAb:BBd AAc:BBd
> 5.160865 -11.858425 -12.853116 -20.289611 6.727401 -2.327173
>>
>> alm=lm(Y ~ A + B + A:B,fr)
>> alm$coefficients
> (Intercept) AAb AAc BBb BBc BBd
> -3.548176 -2.086586 7.003857 4.367800 11.887356 -3.470840
> AAb:BBb AAc:BBb AAb:BBc AAc:BBc AAb:BBd AAc:BBd
> 5.160865 -11.858425 -12.853116 -20.289611 6.727401 -2.327173
>>
>> alm=lm(Y ~ A:B - 1,fr)
>> alm$coefficients
> AAa:BBa AAb:BBa AAc:BBa AAa:BBb AAb:BBb AAc:BBb AAa:BBc
> -3.5481765 -5.6347625 3.4556808 0.8196231 3.8939016 -4.0349449 8.3391795
> AAb:BBc AAc:BBc AAa:BBd AAb:BBd AAc:BBd
> -6.6005222 -4.9465744 -7.0190168 -2.3782017 -2.3423322
>>
>> alm=lm(Y ~ A:B,fr)
>> alm$coefficients
> (Intercept) AAa:BBa AAb:BBa AAc:BBa AAa:BBb AAb:BBb
> -2.34233221 -1.20584424 -3.29243033 5.79801305 3.16195534 6.23623377
> AAc:BBb AAa:BBc AAb:BBc AAc:BBc AAa:BBd AAb:BBd
> -1.69261273 10.68151168 -4.25819000 -2.60424217 -4.67668454 -0.03586951
> AAc:BBd
> NA
>
> ______________________________________________
> R-help at 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.
>
More information about the R-help
mailing list