1과 0을 포함한 비율 데이터의 베타 회귀


19

0과 1 사이의 비율 인 응답 변수가있는 모델을 만들려고하는데 여기에는 꽤 많은 0과 1이 있지만 그 사이의 많은 값이 포함됩니다. 베타 회귀 분석을 시도하고 있습니다. R (betareg)에 대해 찾은 패키지는 0과 1 사이의 값만 허용하지만 0이나 1은 포함하지 않습니다. 이론적으로 베타 분포가 0 또는 1의 값을 처리 할 수 ​​있어야한다는 것을 다른 곳에서 읽었지만 RI에서이를 처리하는 방법을 모르겠습니다. 일부 사람들은 0에 0.001을 추가하고 0에서 0.001을 취하는 것을 보았습니다. 이것이 좋은 생각인지?

또는 반응 변수를 로짓 변환하여 선형 회귀를 사용할 수 있습니다. 이 경우 로그 변환 할 수없는 0과 1에 동일한 문제가 있습니다.


비율뿐만 아니라 카운트를 아는 것은 당신이 무엇을하든 중요합니다. 그러나 일단 계산이 이루어지면 출발점 일지라도 고려해야 할 첫 번째 모형은 로지스틱 회귀입니다.
whuber

베타는 0에서 1 사이입니다 ( 거의 확실합니다 ). 관찰 할 경우 샘플을 관찰 할 수있는 모델을 사용해야합니다. 몇 가지 답변이 이런 종류의 접근 방식을 다루는 것 같습니다. 나는 그들과 함께 시작합니다.
Glen_b-복지 주 모니카

답변:


18

베타 분포와 축퇴 분포를 결합하여 0과 1에 확률을 할당하는 0 개 및 / 또는 1 개의 팽창 베타 회귀 모델을 사용할 수 있습니다. 자세한 내용은 다음 참조를 참조하십시오.

OSPina, R., & Ferrari, SLP (2010). 비정상적인 베타 배포판. 통계 논문, 51 (1), 111-126. Ospina, R. 및 SLP (2012). 0에서 1로 팽창 된 베타 회귀 모델의 일반적인 클래스. 계산 통계 및 데이터 분석, 56 (6), 1609-1623.

이 모델은 R 용 gamlss 패키지로 쉽게 구현할 수 있습니다.


R에서 구현하는 방법에 대한 예가 있습니까?
Ouistiti

2
@Ouistiti zoib패키지는 쉽게 수행합니다.
마크 화이트

11

R betareg패키지에 대한 문서는 다음을 언급합니다.

만약 Y가 또한 가정 실제로 유용한 변환 (Y *는 (N-1) + 0.5) / N 여기서 극단 0과 1 인 N 개의 샘플의 크기이다.

http://cran.r-project.org/web/packages/betareg/vignettes/betareg.pdf

그들은 Smithson M, Verkuilen J (2006)를 참고한다. "더 나은 레몬 압착기? 베타-분산 종속 변수를 사용한 최대 가능성 회귀." 심리학 적 방법, 11 (1), 54–71.


1

마이너스 무한대에서 플러스 무한대까지의 변수를 만들기 위해 로짓 변환을 수행하지 않습니까? 0과 1을 가진 데이터에 문제가 있는지 확실하지 않습니다. 오류 메시지가 표시됩니까? 그건 그렇고, 당신이 비율을 가지고 있다면 분석은 항상 잘못 나올 것입니다. 여러 사례와 함께 사용해야 weight=argument합니다 glm.

아무 것도 효과가 없다면, 중간 분할 또는 사 분위 분할 또는 DV를 여러 범주로 분할하고 대신 순서 형 로지스틱 회귀를 실행하기에 적절하다고 생각되는 컷 포인트를 사용할 수 있습니다. 작동 할 수 있습니다. 이것들을보십시오.

개인적으로 0에 0.001을 추가하고 0에서 0.001을 얻는 것이 너무 나쁜 생각이라고 생각하지는 않지만 나중에 논의 할 몇 가지 문제가 있습니다. 그냥 0.000000001 (또는 더 많은 소수)을 더하고 빼지 않는 이유는 무엇입니까? 그것은 0과 1을 더 잘 표현할 것입니다! 별 차이가없는 것 같습니다. 그러나 실제로 그렇습니다.

다음을 보자.

> #odds when 0 is replaced by 0.00000001

> 0.00000001/(1-0.00000001)
[1] 1e-08
> log(0.00000001/(1-0.00000001))
[1] -18.42068

> #odds when 1 is replaced by (1-0.00000001):

> (1-0.00000001)/(1-(1-0.00000001))
[1] 1e+08
> log((1-0.00000001)/(1-(1-0.00000001)))
[1] 18.42068

> #odds when 0 is replaced by 0.001

> 0.001/(1-0.001)
[1] 0.001001001
> log(0.001/(1-0.001))
[1] -6.906755

> #odds when 1 is replaced by (1-0.001):

> (1-0.001)/(1-(1-0.001))
[1] 999
> log((1-0.001)/(1-(1-0.001)))
[1] 6.906755

따라서 확률을 (0/1) 및 (1/0)에 가깝게 유지해야합니다. 마이너스 무한대에서 플러스 무한대까지의 로그 확률이 ​​예상됩니다. 따라서 더하거나 빼려면 로그 확률이 ​​무한대에 가까워 지도록 정말로 긴 소수점 이하 자리까지 선택해야합니다! 충분히 크게 고려할 수있는 정도는 전적으로 귀하에게 달려 있습니다.


1

슬라이드 17에서 임시 변형에 대해 maartenbuis.nl/presentations/berlin10.pdf 가 언급 된 다음을 확인하십시오 . 또한 두 개의 개별 로지스틱 회귀 분석을 사용하여 0과 1을 모델링 한 다음 경계에없는 사람들에 대해 베타 회귀를 사용할 수 있습니다.


1
(와이(1)+0.5)/

0

,,

엑스1,,엑스제이[ψ(나는엑스나는)ψ(엑스제이)]제이[ψ(나는1엑스나는)ψ(1엑스제이)]


1
이 메타 스레드에 참여하고 싶을 수도 있습니다. stats.meta.stackexchange.com/questions/5814/…
Sycorax는 Monica Reinstate Monica
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.