이것은 질문보다 버그보고 일 수 있습니다. 그러나 newdata
인수를 명시 적으로 사용하면 동일한 데이터 집합을 사용하여 훈련 데이터가 예측과 다른 예측을 생성하는 이유는 무엇입니까? newdata
인수를 생략하고 훈련 데이터 세트를 명시 적으로 사용합니까?훈련 집합에 대한 predict.glmer가 newdata의 유무에 관계없이
library(lme4)
packageVersion("lme4") # 1.1.8
m1 <- glmer(myformula, data=X, family="binomial")
p1 <- predict(m1, type="response")
p2 <- predict(m1, type="response", newdata=X)
all(p1==p2) # FALSE
이것은 반올림 오류가 아닙니다. 나는 cor(p1,p2)
반환 0.8보고 있습니다.
이것은 슬로프가있는 모델과 격리 된 것 같습니다. 다음 플롯에서 암시 적은 새 데이터가없는 predict(..., type="response")
을 의미하고 은을 의미합니다. 여기에서 X는 교육과 동일합니다. 을 의미합니다. 모델 1과 다른 모델의 유일한 차이점은 모델 1에는 (임의의) 절편 만 포함되고 다른 모델에는 무작위 절편과 임의의 슬로프가 있다는 것입니다.
를 통해 Github에서에서 직접 개발 버전을 설치할 수 있습니다 설치 한 경우 [재현 예 (http://stackoverflow.com/questions/5963269/how-to-를 제공하기 위해 도움이 될 것입니다 make-a-great-r-reproducible-example)을 사용하여 검증 할 코드를 실행할 수 있습니다. 수식 지정 방법을 포함시켜야합니다. – MrFlick
@ MrFlick; – user20650
흠, 예측은'newdata'보다는'newX'를 사용하여 동일합니다 – user20650