Teoria 3 Anova
Teoria 3 Anova
Teoria 3 Anova
Información Espacial
Análisis de la Varianza
(ANOVA)
> tapply(COD,zona,mean)
1 2 3 4
6.080 6.440 4.840 6.025
> tapply(COD,zona,sd)
1 2 3 4
0.1483240 0.1140175 0.2073644 0.1707825
Análisis de la varianza para un diseño de un factor: el modelo
El modelo es:
Yij = µ + τ i + ε ij i = 1,…,k, j = 1,…, ni
µi
µ = media general
k
τ i = efecto del tratamiento i, con ∑ i =1τ i = 0
ε ij = término de error aleatorio, desviación aleatoria respecto de la media µi
{ε } son variables aleatorias independientes, ε
ij ij ∼ N ( 0,σ 2 )
Comparación de medias
Hipótesis de interés
Se desea testear
H0 : µ 1 = µ 2 = … = µ k
contra
Ha: por lo menos dos de las µi son diferentes
(µi ≠ µi’ para algún i ≠ i’)
De manera equivalente:
H0: τ1 = τ2 = … = τk = 0
contra
Ha: τi ≠ 0 para por lo menos un i
El análisis de la varianza se basa en descomponer la variabilidad total
de los datos en dos componentes: la debida a la diferencia entre los
tratamientos (variabilidad entre tratamientos) y la que puede atribuirse
a un error aleatorio (variabilidad dentro de los tratamientos).
Descomposición de la suma total de cuadrados
k ni k ni ni
2
SCTotal = ∑∑ Yij − Y ..
i =1 j =1
( ) ∑∑ Y
i =1 j =1
ij k ∑Y
j =1
ij
Y .. = N = ∑ ni Y i. =
k 2 N ni
(
SCTrat = ∑ ni Y i. − Y ..
i =1
) i =1
ni
k 2 k
1 ni 2
SCError = ∑∑ Yij − Y i.
i =1 j =1
( ) = ∑ ( ni -1) S
i =1
i
2
i
2
S = ∑
ni − 1 j =1
(
Yij − Y i. )
k ni k k ni
2 2 2
∑∑ (Y
i =1 j =1
− Y ..
ij ) (
= ∑ ni Y i . − Y .. + ∑∑ Yij − Y i .
i =1 i =1 j =1
) ( )
SCTotal SCTrat SCError
Grados de libertad asociados a cada suma de cuadrados:
glTotal = N - 1
glTrat = k - 1
glError = N - k
SCTrat SCTrat
CMTrat = =
glTrat k -1
SCError SCError
CMError = =
glError N -k
Bajo los supuestos del modelo,
k ni
2
∑∑ (
i =1 j =1
Yij − Y i . )
CMError =
N −k
∑ii
n τ 2
E ( CMTrat ) = σ 2 + i =1
− 1
k
≥0
Luego, cuando H0 es verdadera,
E (CMTrat) = E (CMError) = σ2
Cuando H0 es falsa,
E (CMTrat) > E (CMError) = σ2
Estadístico de prueba:
CMTrat
F=
CMError
La tabla se completa realizando los cálculos con los valores observados yij
k ni k k ni
2 2 2
∑∑ ( y
i =1 j =1
− y..
ij ) ( )
= ∑ ni y i . − y.. + ∑∑ yij − y i.
i =1 i =1 j =1
( )
SCTotal SCTrat SCError
En el ejemplo 1:
Error
Total 100
Métodos de comparaciones múltiples
Para saber a dónde están las diferencias, deben realizarse pruebas a posteriori
o comparaciones múltiples.
$zona
diff lwr upr p adj
2-1 0.360 0.06251907 0.65748093 0.0155783
3-1 -1.240 -1.53748093 -0.94251907 0.0000000
4-1 -0.055 -0.37052618 0.26052618 0.9572569
3-2 -1.600 -1.89748093 -1.30251907 0.0000000
4-2 -0.415 -0.73052618 -0.09947382 0.0085900
4-3 1.185 0.86947382 1.50052618 0.0000001
> plot(TukeyHSD(fit))
Validación del modelo
¿Cómo chequear los supuestos del ANOVA?
Resumiendo, requerimos:
•Independencia
•Normalidad
•Homogeneidad de varianzas
Los residuos del modelo son útiles para comprobar los supuestos. Si el modelo
es adecuado, los residuos no deben tener estructura, no debe haber patrones
marcados.
ɵy = y
Valores predichos (o ajustados): ij i.
r* r*
ɵy ɵy
Se desea contrastar
H 0 : σ 12 = σ 22 = … = σ k2
> summary(aov(abs(residuals(fit))~zona))
Df Sum Sq Mean Sq F value Pr(>F)
zona 3 0.017999 0.0059996 0.8731 0.4769
Residuals 15 0.103080 0.0068720
Otro comando para hacer la prueba de Levene:
> library(lawstat)
> levene.test(COD,zona,location = "mean")
data: COD
Test Statistic = 0.8731, p-value = 0.4769
QQ-plot e histogramas de los residuos (estandarizados)
Gráficos para chequear el supuesto de normalidad
En el ejemplo 1:
> qqnorm(rstandard(fit)); qqline(rstandard(fit))
> hist(rstandard(fit))
Pruebas de normalidad sobre los residuos (estandarizados)
Shapiro-Wilks
Kolmogorov-Smirnov
> shapiro.test(rstandard(fit))
data: rstandard(fit)
W = 0.9631, p-value = 0.6341
> library(nortest)
> lillie.test(rstandard(fit))