[R] new to repeated measures anova in R
Tamre Cardoso
tamre at blarg.net
Mon Mar 5 16:05:16 CET 2012
Thank you.
I have attached the data:
-------------- next part --------------
The error message from Anova is:
> pressure.aov = Anova(multmodel, idata=fact.idata, idesign = ~Shoe * Region, type="III")
Error in linearHypothesis.mlm(mod, hyp.matrix, SSPE = SSPE, idata = idata, :
The error SSP matrix is apparently of deficient rank = 9 < 14
Tamre
On Mar 5, 2012, at 5:45 AM, John Fox wrote:
> Dear Tamre,
>
> You didn't include your data, nor show the error produced with Anova() in
> car by idesign = ~Shoe*Region. Your data appear to have the same structure
> as the O'Brien-Kaiser example in ?Anova, but without the between-subject
> design. I have no trouble producing a two-way within-subject ANOVA for the
> O'Brien-Kaiser data, including the interaction:
>
> ---------- snip ----------
>
>> phase <- factor(rep(c("pretest", "posttest", "followup"), c(5, 5, 5)),
> + levels=c("pretest", "posttest", "followup"))
>> hour <- ordered(rep(1:5, 3))
>> idata <- data.frame(phase, hour)
>> idata
> phase hour
> 1 pretest 1
> 2 pretest 2
> 3 pretest 3
> 4 pretest 4
> 5 pretest 5
> 6 posttest 1
> 7 posttest 2
> 8 posttest 3
> 9 posttest 4
> 10 posttest 5
> 11 followup 1
> 12 followup 2
> 13 followup 3
> 14 followup 4
> 15 followup 5
>>
>> mod.ok <- lm(cbind(pre.1, pre.2, pre.3, pre.4, pre.5,
> + post.1, post.2, post.3, post.4, post.5,
> + fup.1, fup.2, fup.3, fup.4, fup.5) ~ 1,
> + data=OBrienKaiser)
>
>> summary(Anova(mod.ok, idata=idata, idesign=~phase*hour, type="III"),
> multivariate=FALSE)
>
> Univariate Type III Repeated-Measures ANOVA Assuming Sphericity
>
> SS num Df Error SS den Df F Pr(>F)
> (Intercept) 7260.0 1 603.33 15 180.4972 9.100e-10 ***
> phase 167.5 2 169.17 30 14.8522 3.286e-05 ***
> hour 106.3 4 73.71 60 21.6309 4.360e-11 ***
> phase:hour 11.1 8 122.92 120 1.3525 0.2245
> ---
> Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
>
> . . .
>
> ---------- snip ----------
>
> So what's the problem?
>
> Best,
> John
>
>> -----Original Message-----
>> From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-
>> project.org] On Behalf Of Tamre Cardoso
>> Sent: March-04-12 9:15 PM
>> To: r-help at r-project.org
>> Subject: [R] new to repeated measures anova in R
>>
>> Data set up as one observation/subject looks like (with a total of 10
>> subjects) Two treatments: shoe type with 3 categories and region with 8
>> categories ==> 24 "treatment" columns
>>
>> Subject PHallux PMidToes PLatToe PMTH1 PMidMTH PLatMTH PMidfoot
>> PRearfoot LHallux LMidToes LLatToe LMTH1 LMidMTH LLatMTH LMidfoot
>> LRearfoot DHallux DMidToes DLatToe DMTH1 DMidMTH DLatMTH DMidfoot
>> DRearfoot
>> 1 203.230 169.970 75.090 208.420 168.860 129.150
>> 104.840 209.960 200.005 88.880 30.820 315.535 105.445
>> 72.265 88.195 211.280 198.970 113.525 65.640
>> 237.175 148.790 86.105 69.830 222.230
>>
>> R Code:
>>
>> library(car)
>> pressure=read.csv("Shoe_data.csv",header=TRUE,sep=",")
>> datin.model=cbind(pressure[,2],pressure[,3],pressure[,4],pressure[,5],p
>> ressure[,6],pressure[,7],pressure[,8],pressure[,9],pressure[,10],pressu
>> re[,11],pressure[,12],pressure[,13],
>>
>> pressure[,14],pressure[,15],pressure[,16],pressure[,17],pressure[,
>> 18],pressure[,19],pressure[,20],pressure[,21],pressure[,22],pressure[,2
>> 3],pressure[,24],pressure[,25])
>> multmodel=lm(datin.model ~ 1)
>> Shoe <- factor(c(rep("P",8),rep("L",8),rep("D",8)))
>> Region <-
>> factor(rep(c("Hallux","MidToes","LatToe","MTH1","MidMTH","LatMTH","MidF
>> oot","Rearfoot"),3))
>> fact.idata <- data.frame(Shoe,Region)
>> pressure.aov = Anova(multmodel, idata=fact.idata, idesign = ~Shoe +
>> Region, type="III")
>>
>>> summary(pressure.aov,multivariate=F)
>> Univariate Type III Repeated-Measures ANOVA Assuming Sphericity
>>
>> SS num Df Error SS den Df F Pr(>F)
>> (Intercept) 6275173 1 192361 9 293.5961 3.535e-08 ***
>> Shoe 2340 2 11839 18 1.7786 0.1973
>> Region 748644 7 299408 63 22.5037 6.181e-15 ***
>> ---
>> Signif. codes: 0 *** 0.001 ** 0.01 * 0.05 . 0.1 1
>>
>>
>> Mauchly Tests for Sphericity
>>
>> Test statistic p-value
>> Shoe 0.72437 0.275329
>> Region 0.00032 0.006714
>>
>>
>> Greenhouse-Geisser and Huynh-Feldt Corrections for Departure from
>> Sphericity
>>
>> GG eps Pr(>F[GG])
>> Shoe 0.78393 0.2065
>> Region 0.37482 8.391e-07 ***
>> ---
>> Signif. codes: 0 *** 0.001 ** 0.01 * 0.05 . 0.1 1
>>
>> HF eps Pr(>F[HF])
>> Shoe 0.92023 0.2008
>> Region 0.54302 5.227e-09 ***
>> ---
>> Signif. codes: 0 *** 0.001 ** 0.01 * 0.05 . 0.1 1
>>
>> Everything runs fine, except that Anova will not allow idesign =
>> ~Shoe*Region
>>
>> So to look for interaction I set up a long format data set with columns
>> Subject, Pressure, Shoe, Region--df now has 240 rows
>>
>> Then I ran:
>>
>> pressure.alt.df=read.csv("ShoeDataAltFormat.csv",header=TRUE,sep=",")
>>
>> pressure.aovalt=aov(Pressure~(Shoe*Region)+Error(Subject/(Shoe*Region))
>> ,data=pressure.alt.df)
>>
>>> summary(pressure.aovalt)
>>
>> Error: Subject
>> Df Sum Sq Mean Sq F value Pr(>F)
>> Residuals 1 2346.6 2346.6
>>
>> Error: Subject:Shoe
>> Df Sum Sq Mean Sq
>> Shoe 2 3248 1624.0
>>
>> Error: Subject:Region
>> Df Sum Sq Mean Sq
>> Region 7 606772 86682
>>
>> Error: Subject:Shoe:Region
>> Df Sum Sq Mean Sq
>> Shoe:Region 14 34345 2453.2
>>
>> Error: Within
>> Df Sum Sq Mean Sq F value Pr(>F)
>> Shoe 2 35 17.5 0.0063 0.9937
>> Region 7 152734 21819.2 7.8272 2.469e-08 ***
>> Shoe:Region 14 15479 1105.6 0.3966 0.9747
>> Residuals 192 535219 2787.6
>> ---
>> Signif. codes: 0 *** 0.001 ** 0.01 * 0.05 . 0.1 1
>>
>> QUESTIONS:
>>
>> 1) Why does the Anova function not allow Shoe*Region?
>> 2) Does the use of aov provide a correct test for Shoe:Region
>> Interaction?
>> 3) The main effect for Shoe from Anova has a denominator df=18;
>> shouldn't that correspond to one of the error terms from aov?
>> 4) Is the Anova p-value of 0.1973 for the main effect of Shoe the
>> correct test
>>
>> Any help trying to understand exactly what is happening in Anova versus
>> aov is greatly appreciated. Looking at interaction plots, there does
>> not appear to be a lot going on except for two regions with relatively
>> (compared to other regions) different means for at least one Shoe type
>> within the Region.
>>
>> Thank you,
>> Tamre
>> [[alternative HTML version deleted]]
>
>
More information about the R-help
mailing list