Estoy tratando de determinar si las orugas que comen una dieta natural (monkeyflower) son más resistentes a los depredadores (hormigas) que las orugas que comen una dieta artificial (una mezcla de germen de trigo y vitaminas). Hice un estudio de prueba con un tamaño de muestra pequeño (20 orugas; 10 por dieta). Pesé cada oruga antes del experimento. Ofrecí un par de orugas (una por dieta) a un grupo de hormigas por un período de cinco minutos, y conté el número de veces que cada oruga fue rechazada. Repetí este proceso diez veces.
Así son mis datos (A = dieta artificial, N = dieta natural):
Trial A_Weight N_Weight A_Rejections N_Rejections
1 0.0496 0.1857 0 1
2 0.0324 0.1112 0 2
3 0.0291 0.3011 0 2
4 0.0247 0.2066 0 3
5 0.0394 0.1448 3 1
6 0.0641 0.0838 1 3
7 0.0360 0.1963 0 2
8 0.0243 0.145 0 3
9 0.0682 0.1519 0 3
10 0.0225 0.1571 1 0
Estoy tratando de ejecutar un ANOVA en R. Así es como se ve mi código (0 = Dieta artificial, 1 = Dieta natural; todos los vectores están organizados con datos de las diez orugas de dieta artificial primero, seguidos de los datos de la dieta diez natural. orugas):
diet <- factor (rep (c (0, 1), each = 10)
rejections <- c(0,0,0,0,3,1,0,0,0,1,1,2,2,3,1,3,2,3,3,0)
weight <- c(0.0496,0.0324,0.0291,0.0247,0.0394,0.0641,0.036,0.0243,0.0682,0.0225,0.1857,0.1112,0.3011,0.2066,0.1448,0.0838,0.1963,0.145,0.1519,0.1571)
all.data <- data.frame(Diet=diet, Rejections = rejections, Weight = weight)
fit.all <- lm(Rejections ~ Diet * Weight, all.data)
anova(fit.all)
Y así son mis resultados:
Analysis of Variance Table
Response: Rejections
Df Sum Sq Mean Sq F value Pr(>F)
Diet 1 11.2500 11.2500 9.8044 0.006444 **
Weight 1 0.0661 0.0661 0.0576 0.813432
Diet:Weight 1 0.0748 0.0748 0.0652 0.801678
Residuals 16 18.3591 1.1474
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Mis preguntas son:
- ¿Es apropiado ANOVA aquí? Me doy cuenta de que el pequeño tamaño de la muestra sería un problema con cualquier prueba estadística; este es solo un estudio de prueba en el que me gustaría ejecutar estadísticas para una presentación de clase. Planeo rehacer este estudio con un tamaño de muestra más grande.
- ¿He introducido mis datos en R correctamente?
- ¿Me está diciendo que la dieta es importante, pero el peso no?
Respuestas:
tl; dr @whuber tiene razón en que la dieta y el peso se confunden en su análisis: así es como se ve la imagen.
Los puntos gordos + rangos muestran los intervalos de confianza medios y de arranque para la dieta sola; la línea gris + intervalo de confianza muestra la relación general con el peso; Las líneas individuales + IC muestran las relaciones con el peso para cada grupo. Hay más rechazo por la dieta = N, pero esas personas también tienen pesos más altos.
Entrando en los detalles mecánicos sangrientos: está en el camino correcto con su análisis, pero (1) cuando prueba el efecto de la dieta, debe tener en cuenta el efecto del peso, y viceversa ; por defecto, R realiza un ANOVA secuencial , que prueba el efecto de la dieta sola; (2) para datos como este, probablemente debería utilizar un modelo lineal generalizado de Poisson (GLM), aunque no hace mucha diferencia en las conclusiones estadísticas en este caso.
Si observa en
summary()
lugar deanova()
, lo que prueba los efectos marginales, verá que nada parece particularmente significativo (también debe tener cuidado al probar los efectos principales en presencia de una interacción: en este caso, el efecto de la dieta se evalúa en un peso de cero : probablemente no sea sensato, pero dado que la interacción no es significativa (¡aunque tiene un gran efecto!) puede que no haga mucha diferencia.Centrar la variable de peso:
No hay grandes cambios en la historia aquí.
Existe algún argumento sobre si las llamadas pruebas "tipo 3" tienen sentido; no siempre, aunque centrar el peso ayuda. El análisis de tipo 2, que prueba los efectos principales después de eliminar la interacción del modelo, puede ser más defendible. En este caso, la dieta y el peso se prueban en presencia mutua, pero sin las interacciones incluidas.
Podemos ver que si analizamos la dieta ignorando los efectos del peso obtendríamos un resultado muy significativo: esto es esencialmente lo que encontró en su análisis, debido al ANOVA secuencial.
Sería más estándar ajustar este tipo de datos a un Poisson GLM (
glm(rejections~diet*cweight,data=dd2,family=poisson)
), pero en este caso no hay mucha diferencia en las conclusiones.Por cierto, es mejor reorganizar sus datos mediante programación en lugar de hacerlo a mano si puede. Como referencia, así es como lo hice (perdón por la cantidad de "magia" que usé):
Código de trazado:
fuente