Đây là một nền tảng nhỏ về tình huống của tôi: dữ liệu của tôi đề cập đến số lượng con mồi bị ăn thịt thành công. Vì số lượng con mồi bị giới hạn (25 con có sẵn) trong mỗi thử nghiệm, tôi có một cột "Mẫu" đại diện cho số lượng con mồi có sẵn (vì vậy, 25 con trong mỗi thử nghiệm) và một con khác gọi là "Đếm" là số lần thành công ( có bao nhiêu con mồi đã ăn). Tôi dựa trên phân tích của tôi dựa trên ví dụ từ sách R về dữ liệu tỷ lệ (trang 578). Các biến giải thích là Nhiệt độ (4 cấp độ, mà tôi coi là yếu tố) và Giới tính của kẻ săn mồi (rõ ràng là nam hay nữ). Vì vậy, tôi kết thúc với mô hình này:
model <- glm(y ~ Temperature+Sex+Temperature*Sex data=predator, family=quasibinomial)
Sau khi nhận được bảng Phân tích lệch lạc, hóa ra Nhiệt độ và Giới tính (nhưng không phải là sự tương tác) có ảnh hưởng đáng kể đến việc tiêu thụ con mồi. Bây giờ, vấn đề của tôi: Tôi cần biết nhiệt độ nào khác nhau, tức là tôi phải so sánh 4 nhiệt độ với nhau. Nếu tôi có một mô hình tuyến tính, tôi sẽ sử dụng chức năng TukeyHSD, nhưng vì tôi đang sử dụng GLM nên tôi không thể. Tôi đã xem qua gói MASS và cố gắng thiết lập ma trận tương phản nhưng vì một số lý do, nó không hoạt động. Bất kỳ đề xuất hoặc tài liệu tham khảo?
Đây là tóm tắt tôi nhận được từ mô hình của mình, nếu điều đó giúp làm cho nó rõ ràng hơn ...
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
như một nhân tố? Bạn không có các giá trị số thực tế? Tôi sẽ sử dụng chúng như một biến liên tục và sau đó toàn bộ vấn đề này là tranh luận.
glht
chức năng trongmultcomp
gói . Để thực hiện các bài kiểm tra TukeyHSD về nhiệt độ, hãy sử dụng nó như thếglht(my.glm, mcp(Temperature="Tukey"))
. Và btw: Công thức mô hình của bạn có thể được viết tắt là :model<-glm(y ~ Temperature*Sex data=predator, family=quasibinomial)
. Với dấu hoa thị ( ), các tương tác và hiệu ứng chính được trang bị.