ここに私の状況についての少しの背景があります。私のデータは、捕食者が首尾よく食べた獲物の数を参照しています。各トライアルでは獲物の数が限られているため(25個が利用可能)、使用可能な獲物の数を表す「サンプル」列(各トライアルでは25個)と、成功の数である「カウント」何匹の獲物が食べられたか)。プロポーションデータに関するRブック(578ページ)の例に基づいて分析を行いました。説明変数は体温(私は因子として扱った4つのレベル)、および捕食者の性別(明らかに、男性または女性)です。だから私はこのモデルになります:
model <- glm(y ~ Temperature+Sex+Temperature*Sex data=predator, family=quasibinomial)
Analysis of Devianceテーブルを取得した後、温度と性別(相互作用ではない)が獲物の消費に大きな影響を与えることがわかりました。さて、私の問題:どの温度が異なるかを知る必要があります。つまり、4つの温度を互いに比較する必要があります。線形モデルがあれば、TukeyHSD関数を使用しますが、GLMを使用しているため、使用できません。パッケージMASSを調べて、コントラストマトリックスを設定しようとしましたが、何らかの理由で機能しません。提案や参考文献はありますか?
モデルを明確にするのに役立つ場合は、モデルから取得した要約を次に示します...
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
ファクターとしてモデル化したのですか?実際の数値はわかりませんか?私はそれらを連続変数として使用しますが、この問題全体は意味がありません。
glht
内の関数を使用してみることができmultcomp
ます。温度のTukeyHSDテストを実行するには、そのように使用しglht(my.glm, mcp(Temperature="Tukey"))
ます。また、モデル式は次のように短縮できますmodel<-glm(y ~ Temperature*Sex data=predator, family=quasibinomial)
。アスタリスク()を使用すると、相互作用と主効果が適合します。