종속 변수가 백분율 인 반복 측정 실험이 있고 독립 변수로 여러 요인이 있습니다. 이 설정을 직접 수용하는 것처럼 보이기 때문에 glmer
R 패키지 를 사용 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)
총 시행 횟수를 모르는 경우 오류 메시지에 표시된대로 이항 모형이 적합하지 않습니다.
답변