En este informe se analiza una estación experimental llevada a cabo para evaluar los efectos comparativos de diferentes tipos de fertilizantes sobre la altura de una variedad de plantas.
Hipótesis de investigación: existe al menos un tipo de fertilizante que mejora el crecimiento (altura) de las plantas en comparación con los demás tratamientos, incluyendo el testigo sin fertilizante.
Para poner a prueba esta hipótesis se empleó un Diseño Completamente al Azar (DCA), adecuado porque las unidades experimentales (las plantas) se consideran homogéneas y los tratamientos (tipos de fertilizante) se asignaron de forma completamente aleatoria, sin restricciones adicionales de bloqueo.
El análisis estadístico correspondiente a este diseño es un ANOVA de una vía, seguido de una prueba de comparación de medias post-hoc cuando el ANOVA resulta significativo.
# Manipulación y resumen de datos
library(readxl)
library(table1)
# Comparaciones post-anova
library(agricolae)
datos <- read_excel("YDRAY-datos_dca.xlsx")
# Aseguramos que fertilizante sea un factor (variable categórica)
datos$fertilizante <- as.factor(datos$fertilizante)
str(datos)
## tibble [25 × 3] (S3: tbl_df/tbl/data.frame)
## $ fertilizante: Factor w/ 5 levels "N","NK","NP",..: 5 5 5 5 5 1 1 1 1 1 ...
## $ replica : num [1:25] 1 2 3 4 5 1 2 3 4 5 ...
## $ altura : num [1:25] 7 7 15 11 9 12 17 12 18 18 ...
El conjunto de datos contiene 25 observaciones correspondientes a 5 tratamientos de fertilizante (N, NK, NP, NPK, sin), cada uno con sus respectivas réplicas, y la variable respuesta altura de la planta.
table1(~ fertilizante + altura, data = datos)
| Overall (N=25) |
|
|---|---|
| fertilizante | |
| N | 5 (20.0%) |
| NK | 5 (20.0%) |
| NP | 5 (20.0%) |
| NPK | 5 (20.0%) |
| sin | 5 (20.0%) |
| altura | |
| Mean (SD) | 15.0 (5.15) |
| Median [Min, Max] | 15.0 [7.00, 25.0] |
table1(~ altura | fertilizante, data = datos)
| N (N=5) |
NK (N=5) |
NP (N=5) |
NPK (N=5) |
sin (N=5) |
Overall (N=25) |
|
|---|---|---|---|---|---|---|
| altura | ||||||
| Mean (SD) | 15.4 (3.13) | 10.8 (2.86) | 17.6 (2.07) | 21.6 (2.61) | 9.80 (3.35) | 15.0 (5.15) |
| Median [Min, Max] | 17.0 [12.0, 18.0] | 11.0 [7.00, 15.0] | 18.0 [14.0, 19.0] | 22.0 [19.0, 25.0] | 9.00 [7.00, 15.0] | 15.0 [7.00, 25.0] |
Como complemento a las tablas anteriores, un diagrama de cajas permite observar de forma rápida las diferencias en altura entre tratamientos y la dispersión de los datos dentro de cada uno.
boxplot(altura ~ fertilizante, data = datos,
col = "lightgreen",
main = "Altura de las plantas según tipo de fertilizante",
xlab = "Fertilizante", ylab = "Altura (cm)")
A partir de la exploración inicial, se observa que los tratamientos difieren en su altura promedio, lo cual será evaluado formalmente mediante ANOVA.
anova <- aov(altura ~ fertilizante, data = datos)
summary(anova)
## Df Sum Sq Mean Sq F value Pr(>F)
## fertilizante 4 475.8 118.94 14.76 9.13e-06 ***
## Residuals 20 161.2 8.06
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Antes de interpretar el ANOVA, es recomendable verificar sus dos supuestos principales: normalidad de los residuos y homogeneidad de varianzas.
# Normalidad de los residuos
shapiro.test(residuals(anova))
##
## Shapiro-Wilk normality test
##
## data: residuals(anova)
## W = 0.94387, p-value = 0.1818
# Homogeneidad de varianzas
bartlett.test(altura ~ fertilizante, data = datos)
##
## Bartlett test of homogeneity of variances
##
## data: altura by fertilizante
## Bartlett's K-squared = 0.93309, df = 4, p-value = 0.9198
par(mfrow = c(1, 2))
plot(anova, which = 1) # Residuos vs. valores ajustados
plot(anova, which = 2) # QQ-plot de residuos
par(mfrow = c(1, 1))
Nota: si alguno de estos supuestos no se cumple, deben interpretarse los resultados del ANOVA con cautela, o considerar alternativas como transformación de datos o pruebas no paramétricas (p. ej. Kruskal-Wallis).
Dado que el ANOVA evalúa si existe al menos una diferencia entre tratamientos, pero no indica cuáles difieren entre sí, se aplica una prueba de comparación múltiple de medias (LSD de Fisher) cuando el ANOVA resulta estadísticamente significativo.
posanova <- LSD.test(anova, trt = "fertilizante")
posanova
## $statistics
## MSerror Df Mean CV t.value LSD
## 8.06 20 15.04 18.87642 2.085963 3.745452
##
## $parameters
## test p.ajusted name.t ntr alpha
## Fisher-LSD none fertilizante 5 0.05
##
## $means
## altura std r se LCL UCL Min Max Q25 Q50 Q75
## N 15.4 3.130495 5 1.269646 12.751566 18.04843 12 18 12 17 18
## NK 10.8 2.863564 5 1.269646 8.151566 13.44843 7 15 10 11 11
## NP 17.6 2.073644 5 1.269646 14.951566 20.24843 14 19 18 18 19
## NPK 21.6 2.607681 5 1.269646 18.951566 24.24843 19 25 19 22 23
## sin 9.8 3.346640 5 1.269646 7.151566 12.44843 7 15 7 9 11
##
## $comparison
## NULL
##
## $groups
## altura groups
## NPK 21.6 a
## NP 17.6 b
## N 15.4 b
## NK 10.8 c
## sin 9.8 c
##
## attr(,"class")
## [1] "group"
plot(posanova, main = "Comparación de medias - Prueba LSD",
xlab = "Fertilizante", ylab = "Altura (cm)")
Los tratamientos que comparten la misma letra en la salida de la prueba LSD no presentan diferencias estadísticamente significativas entre sí; aquellos con letras distintas sí difieren significativamente en su altura promedio.
Con los datos del experimento, el ANOVA arroja un valor F = 14.76 con p ≈ 9.1×10⁻⁶ (p < 0.001), es decir, muy por debajo del umbral de 0.05. Esto indica que sí existen diferencias estadísticamente significativas en la altura promedio de las plantas entre al menos dos de los cinco tratamientos evaluados (sin fertilizante, N, NP, NPK, NK).
Las alturas promedio por tratamiento, ordenadas de mayor a menor, son:
| Fertilizante | Altura promedio (cm) | Grupo LSD |
|---|---|---|
| NPK | 21.6 | a |
| NP | 17.6 | b |
| N | 15.4 | b |
| NK | 10.8 | c |
| sin (testigo) | 9.8 | c |
(Los grupos LSD se asignan según la prueba
LSD.test(): tratamientos que comparten una letra no
difieren significativamente entre sí; los que tienen letras distintas sí
difieren, p < 0.05.)
Con esto podemos observar que el tratamiento NPK (nitrógeno + fósforo + potasio) produjo la mayor altura promedio en las plantas (21.6 cm), y forma su propio grupo estadístico (“a”), es decir, es significativamente superior a todos los demás tratamientos, incluyendo NP, el segundo mejor (17.6 cm; diferencia de 4.0 cm > LSD = 3.75 cm).
Le siguen NP y N, que no difieren significativamente entre sí (diferencia de 2.2 cm, menor al valor crítico de LSD), por lo que ambos comparten el grupo “b”.
En el extremo inferior, NK y sin fertilizante tampoco difieren significativamente entre sí (diferencia de solo 1.0 cm), y comparten el grupo “c” — es decir, aplicar únicamente N y K, sin fósforo, no mejoró la altura de forma distinguible respecto a no fertilizar en absoluto.
Para llegar a estas conclusiones hay que tener en cuenta que, el ANOVA por sí solo únicamente indica que al menos un tratamiento difiere de los demás, pero no especifica cuáles. Por eso se aplica la prueba LSD de Fisher, que compara todas las parejas posibles de medias contra un valor crítico (LSD = 3.75 cm en este caso, calculado a partir del cuadrado medio del error y el número de réplicas). Si la diferencia absoluta entre dos medias supera ese valor, se considera estadísticamente significativa; si no la supera, no hay evidencia suficiente para decir que los tratamientos son distintos. Es este criterio el que produce el agrupamiento por letras (a, b, c) mostrado arriba.
Desde el punto de vista biológico, el patrón de resultados es consistente con lo que se esperaría agronómicamente:
Este patrón debe interpretarse con cautela dado el tamaño muestral reducido (5 réplicas por tratamiento) y que solo se evaluó una variable de respuesta (altura). Un efecto positivo en altura no implica necesariamente un mejor rendimiento agronómico global (p. ej., producción de fruto, calidad, o relación costo-beneficio del fertilizante).
Informe generado en R Markdown a partir del análisis de un Diseño Completamente al Azar (DCA) para el experimento de fertilizantes.