로지스틱 회귀 분석에 빈도를 추가할 때 "응답은 최소 두 가지 수준을 가져야 합니다"라는 메시지가 나타납니다.안녕,
저는 여러 해에 걸친 종의 존재/부재 데이터를 종속변수로, 다양한 환경 조건(예: 온도)을 예측변수로 사용하여 로지스틱 회귀 분석을 수행하려고 합니다. 또한, 종의 개체수 데이터(종이 존재했을 때 매일 관찰된 개체 수, 관찰되지 않은 경우 0, 조사가 수행되지 않은 경우 null)를 빈도 변수로 포함하고 싶습니다.
개체수 데이터를 포함하지 않으면 로지스틱 회귀 모델을 완벽하게 실행할 수 있습니다. 하지만 개체수 데이터를 빈도(또는 가중치 - 둘 다 시도해 봤습니다)로 포함시키면 "반응 변수는 최소 두 개 이상의 레벨을 가져야 합니다"라는 오류가 발생합니다.
응답 변수는 명목 변수(0은 없음, 1은 있음, •는 설문 조사가 실시되지 않음)로 설정했습니다. 풍부도 데이터 열은 연속형으로 설정했고, 예측 변수들도 모두 연속형입니다.
데이터셋에 널값이 너무 많아서 문제가 발생한 것 같았습니다 (해당 종은 1년 중 몇 달 동안만 활동하기 때문에 대부분의 기간 동안 모니터링이 이루어지지 않습니다). 하지만 널값을 모두 제외해도 같은 오류가 발생했습니다.
문제가 특정 개체수 데이터에서만 발생하는지 확인하기 위해 관련 없는 연속형 변수(관찰 연도)를 가상의 '빈도'로 입력해 보았는데, JMP는 아무 문제 없이 이를 실행했습니다.
저는 JMP 학생용 에디션 19.0.1을 사용하고 있습니다.
미리 감사드립니다! 
~ 바비
기초 데이터 분석 및 모델링Re: 로지스틱 회귀 분석에서 빈도를 추가할 때 "응답은 최소 두 개 이상의 레벨을 가져야 합니다"라는 메시지가 나타납니다.안녕하세요 @bobby님 , 커뮤니티에 오신 것을 환영합니다. 데이터를 보지 않고는 추측만 할 수 있지만, 존재 여부와 관계없이 풍부도가 항상 0인 것처럼 보입니다.
Re: 로지스틱 회귀 분석에서 빈도를 추가할 때 "응답은 최소 두 가지 수준을 가져야 합니다"라는 메시지가 나타납니다.데이터를 보여주시면 답변하기가 훨씬 쉬울 텐데, 제 생각에는 다음과 같습니다. 풍부도를 빈도나 가중치로 사용하면 풍부도가 0일 때는 존재 여부라는 반응 변수를 0으로 제한하게 되고, 풍부도가 없는 경우에는 결측값으로 처리하게 됩니다(결측값은 로지스틱 회귀 분석에서 무시됩니다). 따라서 사용되는 풍부도 값은 풍부도가 존재하는 경우에만 해당됩니다. 풍부도를 가중치/빈도로 사용하는 것은 존재/부재 변수를 지워버리고 존재 여부만 반응 변수 값으로 나타나게 하는 것과 같습니다.
하지만 풍부도를 다루는 방식에 대해 의문이 듭니다. 풍부도를 연속 변수로 예측하려는 것 같은데, 0이 많은 경우 아닌가요? 마치 검열된 데이터 문제 같거나, 적어도 많은 값이 0이고 나머지는 연속 변수의 다양한 수준일 때 모집단의 크기를 예측하려는 문제처럼 들립니다. 이러한 상황을 어떻게 모델링하는 것이 가장 좋을지 제안하기는 어렵지만, 풍부도를 빈도나 가중치로 사용하는 것은 올바른 방법이 아닌 것 같습니다.
Re: 로지스틱 회귀 분석에서 빈도를 추가할 때 "응답은 최소 두 개 이상의 레벨을 가져야 합니다"라는 메시지가 나타납니다.안녕하세요 @MRB3855님 - 감사합니다! 네, 맞습니다. 부재할 때 풍요로움은 항상 0입니다.
Re: 로지스틱 회귀 분석에서 빈도를 추가할 때 "응답은 최소 두 가지 수준을 가져야 합니다"라는 메시지가 나타납니다.안녕하세요 @dlehman님 , 감사합니다! 죄송하지만 실제 데이터를 올려도 될지 확신이 서지 않아 조심스럽게 말씀드리는 것입니다. 아래 표는 제가 가지고 있는 데이터의 예시이며, 실제 데이터에는 0과 null 값이 훨씬 더 많습니다. 말씀하신 대로 개체 수 데이터는 0이 많고, 연속 변수인 개체 수가 0이 아닌 날도 있습니다.
모델에 대해 설명드리자면, 물고기는 여름에 부화하기 시작하지만 정확한 시기는 환경 요인에 따라 달라집니다 (부화 후 개체 수 또한 마찬가지입니다). 저는 물고기 출현과 가장 높은 상관관계를 보이는 요인을 파악하여 궁극적으로 물고기가 언제 부화하기 시작할지 예측하려고 합니다. 개체 수 예측 자체는 중요하지 않지만, 관찰된 개체 수를 지표로 사용하여 계절이 진행됨에 따라 얼마나 많은 물고기가 부화하는지, 그리고 물고기 부화와 환경 요인 간의 실제 관계를 좀 더 명확하게 파악하려고 합니다. (참고로, 관찰된 물고기는 채집된 것이므로 재채집 문제는 없습니다.) 제 설명이 충분한지 모르겠습니다. 이해가 안 되는 부분이 있으면 말씀해 주세요! (통계학은 아직 초보입니다. :cara_que_sonríe_con_ojos_sonrientes:)
이렇게 타이핑하다 보니, 존재/부재 여부를 무시하고 풍부함만을 고려하는 방법도 생각해 볼 수 있겠다는 생각이 들었습니다. 물론 이렇게 하더라도 0은 어떻게든 처리해야 하므로, 한번 시도해 봐야겠습니다.
| 년도 |
월 |
낮 |
물고기 있음/없음 (1/0) |
어류 개체수 (관찰된 어류 수) |
일일 평균 수온 (°C) |
여름철 누적 수온(°C) |
하천 깊이(m) |
| 2016 |
1 |
29 |
• |
• |
12.0 |
803.0 |
0.6 |
| 2016 |
1 |
30 |
0 |
0 |
12.8 |
815.8 |
0.6 |
| 2016 |
1 |
31 |
1 |
3 |
14.2 |
830.0 |
0.7 |
| 2016 |
2 |
1 |
1 |
7 |
14.7 |
844.7 |
0.7 |
| 2016 |
2 |
2 |
0 |
0 |
13.3 |
858.0 |
0.5 |
| 2016 |
2 |
3 |
1 |
2 |
14.1 |
872.1 |
0.7 |
| 2016 |
2 |
4 |
0 |
0 |
12.6 |
884.7 |
0.8 |
| 2016 |
2 |
5 |
• |
• |
12.9 |
897.6 |
0.6 |
| 2016 |
2 |
6 |
• |
• |
13.4 |
811.0 |
0.7 |
Re: 로지스틱 회귀 분석에서 빈도를 추가할 때 "응답은 최소 두 가지 수준을 가져야 합니다"라는 메시지가 나타납니다.안녕하세요 @bobby 님 ,
커뮤니티에 오신 것을 환영합니다!
@dlehman1 님이 문제의 원인을 찾았습니다. '풍부도' 열을 '빈도(Freq)' 또는 '무게(weight)'로 사용할 때, 해당 열에 0이 있으면 물고기가 없는 행이 로지스틱 회귀 분석에서 제외됩니다. 이는 해당 행이 없는 경우와 동일한 결과입니다.
모델링 작업을 두 부분으로 나누는 것을 추천합니다.
- 첫째, 로지스틱 회귀 분석을 사용하여 어떤 조건에서 물고기가 존재하거나 존재하지 않는지 감지하기 위해 부재/존재 열만 사용합니다.
- 둘째, 물고기가 관찰된 경우에는 물고기 수를 모델링해 보세요(개체 수를 다루는 것이므로 포아송 일반화 회귀 분석이 적합할 것입니다).
물고기 개체수(어류의 개체 수)만 예측하는 경우, 0과 0이 아닌 값을 모두 처리할 수 있는 (영점 과잉) 포아송 분포를 사용하면 두 작업을 하나로 처리할 수 있을지도 모릅니다.
제 생각에는 두 가지 모델링 접근 방식(로지스틱 회귀와 포아송 회귀)은 약간 다른 질문에 답합니다. 로지스틱 회귀는 물고기의 존재를 가능하게 하는 조건이 무엇인지 묻는 반면, 포아송 회귀는 다양한 조건이 물고기의 존재를 어떻게 증가시킬 수 있는지 묻는 것입니다.
이 답변이 도움이 되길 바랍니다.