[R] Contrast anova multi factor
pdalgd at gmail.com
Mon Apr 27 00:07:37 CEST 2015
> On 26 Apr 2015, at 17:30 , Thierry Onkelinx <thierry.onkelinx at inbo.be> wrote:
> Dear Mario,
> The interpretation is the same: the average at the reference situation
> which is the group that has f1 == "f1 level1" and f2 == "f2 level1".
A little more precisely: It is the estimate of the expected value at the reference situation.
In a balanced two-way design, this can be worked out explicitly: It is the average of the first row + the average of the first column - the total average. E.g.
> lm(hr~subj+time, heart.rate)
lm(formula = hr ~ subj + time, data = heart.rate)
(Intercept) subj2 subj3 subj4 subj5 subj6
94.917 18.000 -5.750 -8.000 30.500 6.500
subj7 subj8 subj9 time30 time60 time120
-22.000 -16.000 11.500 -4.000 -5.444 -4.222
> with(heart.rate, tapply(hr, subj, mean))
1 2 3 4 5 6 7 8 9
91.50 109.50 85.75 83.50 122.00 98.00 69.50 75.50 103.00
> with(heart.rate, tapply(hr, time, mean))
0 30 60 120
96.55556 92.55556 91.11111 92.33333
> with(heart.rate, mean(hr))
> 91.5+96.55556 - 93.13889
In an unbalanced design, the calculation of the intercept gets a bit lost in matrix-calculus land; there is no simple formula, but it is still an estimate of the same thing.
- Peter D
> Best regards,
> ir. Thierry Onkelinx
> Instituut voor natuur- en bosonderzoek / Research Institute for Nature and
> team Biometrie & Kwaliteitszorg / team Biometrics & Quality Assurance
> Kliniekstraat 25
> 1070 Anderlecht
> To call in the statistician after the experiment is done may be no more
> than asking him to perform a post-mortem examination: he may be able to say
> what the experiment died of. ~ Sir Ronald Aylmer Fisher
> The plural of anecdote is not data. ~ Roger Brinner
> The combination of some data and an aching desire for an answer does not
> ensure that a reasonable answer can be extracted from a given body of data.
> ~ John Tukey
> 2015-04-26 17:12 GMT+02:00 Mario José Marques-Azevedo <mariojmaaz at gmail.com>
>> Hi all,
>> I am doing anova multi factor and I found different Intercept when model
>> has interaction term.
>> I have the follow data:
>> dt <- data.frame(f1=c(rep("a",5),rep("b",5)),
>> When I run
>> summary.lm(aov(y ~ f1 * f2, data = dt))
>> The Intercept term is the mean of first level of f1 and f2. I can confirm
>> that with:
>> tapply(dt$y, list(dt$f1, dt$f2), mean)
>> I know that others terms are difference of levels with Intercept.
>> But I do not know what is Intercept when the model do not have interaction
>> summary.lm(aov(y ~f1 + f2, data = dt))
>> I know that I can create a specific contrast table, by I would like
>> understand the default R output.
>> I read contrast sub-chapter on Crawley 2012 (The R book) and in his example
>> the Intercept is different when model has or not interaction term, but he
>> explain that Intercept is mean of first level of the factors.
>> Best regards,
>> Mario José Marques-Azevedo
>> Ph.D. Candidate in Ecology
>> Dept. Plant Biology, Institute of Biology
>> University of Campinas - UNICAMP
>> Campinas, São Paulo, Brazil
>> [[alternative HTML version deleted]]
>> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
>> PLEASE do read the posting guide
>> and provide commented, minimal, self-contained, reproducible code.
> [[alternative HTML version deleted]]
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
Peter Dalgaard, Professor,
Center for Statistics, Copenhagen Business School
Solbjerg Plads 3, 2000 Frederiksberg, Denmark
Email: pd.mes at cbs.dk Priv: PDalgd at gmail.com
More information about the R-help