Aquí hay algunos antecedentes sobre mi situación: mis datos se refieren al número de presas que un depredador ha comido con éxito. Como la cantidad de presas es limitada (25 disponibles) en cada prueba, tenía una columna "Muestra" que representaba la cantidad de presas disponibles (25 en cada prueba), y otra llamada "Cuenta", que era la cantidad de éxito ( cuántas presas se comieron). Basé mi análisis en el ejemplo del libro R sobre datos de proporción (página 578). Las variables explicativas son Temperatura (4 niveles, que traté como factor) y Sexo del depredador (obviamente, hombre o mujer). Así que termino con este modelo:
model <- glm(y ~ Temperature+Sex+Temperature*Sex data=predator, family=quasibinomial)
Después de obtener la tabla Análisis de desviación, resulta que la temperatura y el sexo (pero no la interacción) tienen un efecto significativo en el consumo de presas. Ahora, mi problema: necesito saber qué temperaturas difieren, es decir, tengo que comparar las 4 temperaturas entre sí. Si tuviera un modelo lineal, usaría la función TukeyHSD, pero como estoy usando un GLM no puedo. He estado revisando el paquete MASS e intentando configurar una matriz de contraste, pero por alguna razón no funciona. ¿Alguna sugerencia o referencia?
Aquí está el resumen que obtengo de mi modelo, si eso ayuda a aclararlo ...
y <- cbind(data$Count, data$Sample-data$Count)
model <- glm(y ~ Temperature+Sex+Temperature*Sex data=predator, family=quasibinomial)
> summary(model)
# Call:
# glm(formula = y ~ Temperature + Sex + Temperature * Sex, family=quasibinomial, data=data)
# Deviance Residuals:
# Min 1Q Median 3Q Max
# -3.7926 -1.4308 -0.3098 0.9438 3.6831
# Coefficients:
# Estimate Std. Error t value Pr(>|t|)
# (Intercept) -1.6094 0.2672 -6.024 3.86e-08 ***
# Temperature8 0.3438 0.3594 0.957 0.3414
# Temperature11 -1.0296 0.4803 -2.144 0.0348 *
# Temperature15 -1.2669 0.5174 -2.449 0.0163 *
# SexMale 0.3822 0.3577 1.069 0.2882
# Temperature8:SexMale -0.2152 0.4884 -0.441 0.6606
# Temperature11:SexMale 0.4136 0.6093 0.679 0.4990
# Temperature15:SexMale 0.4370 0.6503 0.672 0.5033
# ---
# Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
# (Dispersion parameter for quasibinomial family taken to be 2.97372)
# Null deviance: 384.54 on 95 degrees of freedom
# Residual deviance: 289.45 on 88 degrees of freedom
# AIC: NA
# Number of Fisher Scoring iterations: 5
Temperature
como factor? ¿No tienes los valores numéricos reales? Los usaría como una variable continua y luego todo este problema es discutible.
glht
multcomp
glht(my.glm, mcp(Temperature="Tukey"))
model<-glm(y ~ Temperature*Sex data=predator, family=quasibinomial)