2013-04-16 4 views
5

다른 프로그램에서 학생 등록을 보는 회귀 모델을 개발하는 임무를 맡았습니다. 이것은 매우 훌륭하고 깨끗한 데이터 세트로, 등록 수는 푸 아송 분포 우물을 따릅니다. R (GLM과 Zero Inflated Poisson을 모두 사용하는 모델)에 적합했습니다. 결과로 나온 잔차가 합리적으로 보였습니다.R의 Rate 변수에 대한 회귀

그러나 학생들 수를 student/school_population (각 학교는 자체 인구가 있습니다)로 계산 된 "비율"로 변경하도록 지시되었습니다. 이제는 더 이상 카운트 변수가 아니지만 0에서 1 사이입니다. 이것은 프로그램에서 "등록 비율"로 간주됩니다.

이 "비율"(학생/인구)은 더 이상 포아송이 아니지만 분명히 정상이 아닙니다. 그래서 저는 적절한 분배와 그것을 나타내는 후속 모델에 관해서는 약간 분실되어 있습니다.

로그 정규 분포가이 비율 매개 변수에 잘 맞는 것처럼 보이지만 많은 0 값이 있으므로 실제로 적합하지 않습니다.

이 새로운 매개 변수에 대한 최적의 배포 방법에 대한 제안과 R로 모델링하는 방법은 무엇입니까?

감사합니다.

+2

노출/오프셋 변수 (http://en.wikipedia.org/wiki/Poisson_regression#.22Exposure.22_and_offset)를 사용하는 경우입니다. http://stats.stackexchange.com/ – Rcoster

+1

에 대한 질문은 r-help에 교차 게시되었습니다. http://thread.gmane.org/gmane.comp.lang.r.general/291112 –

답변

5

코멘트에 제안로서 당신은 포아송 모델을 유지하고 함께 할 수있는 오프셋 :

glm(response~predictor1+predictor2+predictor3+ ... + offset(log(population), 
    family=poisson,data=...) 

또는 당신은 이항 GLM을 사용할 수 있습니다, 하나

glm(cbind(response,pop_size-response) ~ predictor1 + ... , family=binomial, 
     data=...) 

또는

glm(response/pop_size ~ predictor1 + ... , family=binomial, 
     weights=pop_size, 
     data=...) 

덜 널리 사용되지만 후자의 형식이 때로는 더 편리합니다. 일반적으로 포아송에서 이항으로 전환 할 때 링크 기능이 로그에서 로짓으로 변경되지만 원하는 경우 family=binomial(link="log"))을 사용할 수 있습니다.

Poisson + 오프셋 조합으로 모델링하기가 더 쉽습니다 (pscl 패키지, 가장 일반적인 ZIP 접근 방식 인 경우 오프셋을 처리 할 수 ​​있을지는 모르겠지만 그럴 것이라고 생각합니다). 일반적으로 제로가 팽창 된 이항 모델보다 일반적으로 사용 가능합니다.

제 생각에는 glmmADMB이 제로 - 비정상 이항 모델을 수행 할 것이라고 생각하지만 테스트하지 않았습니다.

+1

Ben - 좋은 대답. pscl 패키지가 ZIP 모델과의 오프셋을 허용한다는 점에서 옳습니다. 그러나 오프셋을 사용하여이를 맞추려고하면 오프셋이없는 모델뿐만 아니라 적합하지 않습니다. 이상하게 보입니다. 또한 예측 된 값이 어떻게 영향을 받는지도 모르겠습니다. pscl에서 zeroinfl() 함수를 사용하면 수식에 오프셋이있어서 예측값의 해석이 바뀌는가? – Noah

관련 문제