태그 보관물: r

r

이항 GLMM (glmer)을 yes-no count가 아닌 백분율에 적용하는 방법은 무엇입니까?

종속 변수가 백분율 인 반복 측정 실험이 있고 독립 변수로 여러 요인이 있습니다. 이 설정을 직접 수용하는 것처럼 보이기 때문에 glmerR 패키지 를 사용 lme4하여 로지스틱 회귀 문제 (을 지정하여 family=binomial) 로 취급 하고 싶습니다 .

내 데이터는 다음과 같습니다

 > head(data.xvsy)
   foldnum      featureset noisered pooldur dpoolmode       auc
 1       0         mfcc-ms      nr0       1      mean 0.6760438
 2       1         mfcc-ms      nr0       1      mean 0.6739482
 3       0    melspec-maxp    nr075       1       max 0.8141421
 4       1    melspec-maxp    nr075       1       max 0.7822994
 5       0 chrmpeak-tpor1d    nr075       1       max 0.6547476
 6       1 chrmpeak-tpor1d    nr075       1       max 0.6699825

그리고 내가 원했던 R 명령이 적절합니다.

 glmer(auc~1+featureset*noisered*pooldur*dpoolmode+(1|foldnum), data.xvsy, family=binomial)

이 문제는 명령이 종속 변수가 정수가 아닌 것에 대해 불평한다는 것입니다.

In eval(expr, envir, enclos) : non-integer #successes in a binomial glm!

이 (파일럿) 데이터를 분석하면 이상한 결과를 얻을 수 있습니다.

binomial가족이 정수 (예-아니오)를 기대 하는 이유를 이해 하지만 백분율 데이터를 직접 회귀하는 것이 좋습니다. 이것을하는 방법?



답변

의 반응 변수로 비율 벡터를 glmer(., family = binomial)사용하려면 weights인수를 사용하여 각 비율로 이어지는 시행 횟수를 설정해야합니다 . 예를 들어 패키지 의 cbpp데이터 사용lme4

glmer(incidence / size ~ period + (1 | herd), weights = size,
   family = binomial, data = cbpp)

총 시행 횟수를 모르는 경우 오류 메시지에 표시된대로 이항 모형이 적합하지 않습니다.