[R] ANCOVA
Matt Oliver
oliver at imcs.marine.rutgers.edu
Fri Aug 27 23:10:11 CEST 2004
Dear R-help list,
I am attempting to understand the proper formulation of ANCOVA's in R. I
would like to test both parallelism and intercept equality for some data
sets, so I have generated an artificial data set to ease my understanding.
This is what I have done
#Limits of random error added to vectors
min <- -0.1
max <- 0.1
x <- c(c(1:10), c(1:10))+runif(20, min, max)
x1 <- c(c(1:10), c(1:10))+runif(20, min, max)
y <- c(c(1:10), c(10:1))+runif(20, min, max)
z <- c(c(1:10), c(11:20))+runif(20, min, max)
g <- as.factor(c(rep(1, 10), rep(2, 10)))
#x and x1 have similar slopes and have the similar intercepts,
#x and y have different slopes and different intercepts
#x and z have similar slopes with different intercepts
#These are my full effects models
fitx1x <- lm(x1~g+x+x:g)
fityx <- lm(y~g+x+x:g)
fitzx <- lm(z~g+x+x:g)
anova(fitx1x)
Analysis of Variance Table
Response: x1
Df Sum Sq Mean Sq F
value Pr(>F)
g 1 0.002 0.002 0.3348
0.5709
x 1 163.927 163.927 23456.8319
<2e-16 ***
g:x 1 0.002 0.002 0.2671
0.6123
Residuals 16 0.112 0.007
---
Signif. codes: 0 `***' 0.001 `**' 0.01 `*' 0.05 `.' 0.1 ` ' 1
These results confirm that x and x1 do not have significantly different
means with respect to g;
There is a significant linear relationship between x and x1 independent of g
There is no evidence that the slopes of x and x1 in the two g groups is
different
anova(fityx)
Analysis of Variance Table
Response: y
Df Sum Sq Mean Sq F
value Pr(>F)
g 1 0.012 0.012 1.7344
0.2064
x 1 0.003 0.003 0.4399
0.5166
g:x 1 164.947 164.947 24274.4246 <2e-16 ***
Residuals 16 0.109 0.007
---
Signif. codes: 0 `***' 0.001 `**' 0.01 `*' 0.05 `.' 0.1 ` ' 1
These results confirm that x and y do not have significantly different
means with respect to g;
There is a not a significant linear relationship between x and y
independent of g
There is evidence that the slopes of x and y in the two g groups is
significantly different.
anova(fitzx)
Analysis of Variance Table
Response: z
Df Sum Sq Mean Sq F value Pr(>F)
g 1 501.07 501.07 52709.9073 <2e-16 ***
x 1 165.39 165.39 17398.4057 <2e-16 ***
g:x 1 0.02 0.02 1.7472
0.2048
Residuals 16 0.15 0.01
---
Signif. codes: 0 `***' 0.001 `**' 0.01 `*' 0.05 `.' 0.1 ` ' 1
These results confirm that x and z have significantly different means with
respect to g;
There is a a significant linear relationship between x and z independent of g
There is no evidence that the slopes of x and z in the two g groups is
significantly different.
What I don't understand is how to formulate the model so that I can tell if
the intercepts between the g groups are different.
Also, how would I formulate an ANCOVA if I am dealing with Model II
regressions?
Any help would be greatly appreciated.
Matt
==============================
When you reach an equilibrium in biology,
you're dead. - A. Mandell
==============================
Matthew J. Oliver
Institute of Marine and Coastal Sciences
71 Dudley Road, New Brunswick
New Jersey, 08901
http://marine.rutgers.edu/cool/
More information about the R-help
mailing list