일반화, 선형 및 혼합 모델 에서 예제를 재현하고 있습니다. 내 MWE는 다음과 같습니다.
Dilution <- c(1/128, 1/64, 1/32, 1/16, 1/8, 1/4, 1/2, 1, 2, 4)
NoofPlates <- rep(x=5, times=10)
NoPositive <- c(0, 0, 2, 2, 3, 4, 5, 5, 5, 5)
Data <- data.frame(Dilution, NoofPlates, NoPositive)
fm1 <- glm(formula=NoPositive/NoofPlates~log(Dilution), family=binomial("logit"), data=Data)
summary(object=fm1)
산출
Call:
glm(formula = NoPositive/NoofPlates ~ log(Dilution), family = binomial("logit"),
data = Data)
Deviance Residuals:
Min 1Q Median 3Q Max
-0.38326 -0.20019 0.00871 0.15607 0.48505
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) 4.174 2.800 1.491 0.136
log(Dilution) 1.623 1.022 1.587 0.112
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 8.24241 on 9 degrees of freedom
Residual deviance: 0.64658 on 8 degrees of freedom
AIC: 6.8563
Number of Fisher Scoring iterations: 6
암호
anova(object=fm1, test="Chisq")
산출
Analysis of Deviance Table
Model: binomial, link: logit
Response: NoPositive/NoofPlates
Terms added sequentially (first to last)
Df Deviance Resid. Df Resid. Dev Pr(>Chi)
NULL 9 8.2424
log(Dilution) 1 7.5958 8 0.6466 0.00585 **
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
암호
library(aod)
wald.test(b=coef(object=fm1), Sigma=vcov(object=fm1), Terms=2)
산출
Wald test:
----------
Chi-squared test:
X2 = 2.5, df = 1, P(> X2) = 0.11
추정 된 계수는이 책에 제공된 결과와 완벽하게 일치하지만 SE는 멀리 떨어져 있습니다. LRT 테스트를 기반으로 기울기는 중요하지만 Wald 및 Z- 테스트 기울기 계수를 기준으로 중요하지 않습니다. 내가 기본적인 것을 놓칠 지 궁금합니다. 도움을 주셔서 감사합니다.
답변
주요 문제는 비율을 응답 변수로 사용하려면 weights
인수 를 사용해야한다는 것 입니다. “이항식 glm의 정수가 아닌 # 성공”에 대한 경고를 무시해야합니다.
Dilution <- c(1/128, 1/64, 1/32, 1/16, 1/8, 1/4, 1/2, 1, 2, 4)
NoofPlates <- rep(x=5, times=10)
NoPositive <- c(0, 0, 2, 2, 3, 4, 5, 5, 5, 5)
Data <- data.frame(Dilution, NoofPlates, NoPositive)
fm1 <- glm(formula=NoPositive/NoofPlates~log(Dilution),
family=binomial("logit"), data=Data, weights=NoofPlates)
coef(summary(fm1))
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 4.173698 1.2522190 3.333042 0.0008590205
## log(Dilution) 1.622552 0.4571016 3.549653 0.0003857398
anova(fm1,test="Chisq")
## Df Deviance Resid. Df Resid. Dev Pr(>Chi)
## NULL 9 41.212
## log(Dilution) 1 37.979 8 3.233 7.151e-10 ***
aod::wald.test()
summary()
Wald 대 프로파일 신뢰 구간도 약간 다르지만 (0.7,2.5) (Wald) 및 (0.9, 2.75) (LRT)의 CI [아래에 표시]가 실제로 다른지 여부는 특정 상황에 따라 다릅니다.
왈드 :
confint.default(fm1)
## 2.5 % 97.5 %
## (Intercept) 1.7193940 6.628002
## log(Dilution) 0.7266493 2.518455
프로필:
confint(fm1)
## 2.5 % 97.5 %
## (Intercept) 2.2009398 7.267565
## log(Dilution) 0.9014053 2.757092