비닝 된 데이터의 3 분위를 추정하는 방법은 무엇입니까?


12

모집단의 4 분의 1 이상을 포함하는 개방 구간에 속하는 경우 3 분위를 결정하는 기술적 트릭이 있습니까 (그래서 구간을 닫고 표준 공식을 사용할 수 없음)?

편집하다

내가 무언가를 잘못 이해했을 때 나는 다소 완전한 맥락을 제공 할 것이다. 두 개의 열과 6 개의 행이있는 테이블에 데이터가 정렬되어 있습니다. 각 열에는 간격 (첫 번째 열)과 해당 간격에 속하는 인구의 수에 해당합니다. 마지막 간격은 열려 있으며 모집단의 25 % 이상을 포함합니다. 마지막 간격을 제외한 모든 구간의 범위는 동일합니다.

샘플 데이터 (프레젠테이션을 위해 바꿈) :

Column 1: (6;8),(8;10),(10;12),(12;14),(14;16),(16;∞)
Column 2:    51,    65,     68,     82,     78,   182 

첫 번째 열은 소득 수준 범위로 해석됩니다. 두 번째는 소득이 해당 간격에 속하는 직원 수로 해석됩니다.

내가 생각하고있는 표준 공식은 .Q3=xQ3+3N4i=1k1ninQ3rQ3


구간 화 된 데이터를 사용하여 Quantile을 추정하려고 할 때 일반적인 가정은 구간 내에서 균일 성을 가정하는 것입니다. 그러나 데이터가 분산되는 방식에 대해 알고있는 경우, 그 지식을 반영하는 가정 (수입과 마찬가지로) 가정이 더 나은 경향이 있습니다. 또 다른 대안은 데이터가 매끄럽다 고 가정 한 다음 데이터를 매끄럽게하고 (KDE 또는 일부 적합 분포에 상관없이) 모형에 따라 구간 내에 점을 재분배하고 (그리고 아마도 EM과 같은 방식으로) 적합도를 재 추정합니다. & bins에서 다시 재배포]하여 그로부터 Quantile을 추정하십시오.
Glen_b-복지 주 모니카

답변:


16

비닝 된 데이터 를 일부 분포 모델 에 맞출 필요가 있습니다. 그것이 상위 사 분위수에 외삽하는 유일한 방법이기 때문입니다.

모델

F01(a,b]F(b)F(a)θ{Fθ}FθL

L(θ)=(Fθ(8)Fθ(6))51(Fθ(10)Fθ(8))65(Fθ()Fθ(16))182

51Fθ(8)Fθ(6)65Fθ(10)Fθ(8)

모델을 데이터에 피팅

θLL

θ=(μ,σ)

F(μ,σ)(x)=12π(log(x)μ)/σexp(t2/2)dt.

LRlog(L(θ))log(L)Llog(L)

logL <- function(thresh, pop, mu, sigma) {
  l <- function(x1, x2) ifelse(is.na(x2), 1, pnorm(log(x2), mean=mu, sd=sigma)) 
                        - pnorm(log(x1), mean=mu, sd=sigma)
  logl <- function(n, x1, x2)  n * log(l(x1, x2))
  sum(mapply(logl, pop, thresh, c(thresh[-1], NA)))
}

thresh <- c(6,8,10,12,14,16)
pop <- c(51,65,68,82,78,182)
fit <- optim(c(0,1), function(theta) -logL(thresh, pop, theta[1], theta[2]))

θ=(μ,σ)=(2.620945,0.379682)fit$par

모델 가정 확인

F

predict <- function(a, b, mu, sigma, n) {
  n * ( ifelse(is.na(b), 1, pnorm(log(b), mean=mu, sd=sigma)) 
        - pnorm(log(a), mean=mu, sd=sigma) )

적합하거나 "예측 된"빈 모집단을 얻기 위해 데이터에 적용됩니다.

pred <- mapply(function(a,b) predict(a,b,fit$par[1], fit$par[2], sum(pop)), 
               thresh, c(thresh[-1], NA))

데이터의 히스토그램과 예측을 그려 시각적으로 비교할 수 있습니다 (이 도표의 첫 번째 행에 표시됨).

히스토그램

이를 비교하기 위해 카이 제곱 통계량을 계산할 수 있습니다. 이것은 일반적으로 유의성을 평가하기 위해 카이 제곱 분포를 말합니다 .

chisq <- sum((pred-pop)^2 / pred)
df <- length(pop) - 2
pchisq(chisq, df, lower.tail=FALSE)

0.008768630.40

피팅을 사용하여 Quantile 추정

63(μ,σ)(2.620334,0.405454)F75th

exp(qnorm(.75, mean=fit$par[1], sd=fit$par[2]))

18.066317.76

이 절차와이 코드는 일반적으로 적용될 수 있습니다. 최대 우도 이론은 제 3 사 분위수 주위의 신뢰 구간을 계산하기 위해 더 활용 될 수 있습니다.


와우 고마워! 나는 그러한 고급 기계가 해결책을 찾는 데 사용될 것이라고는 생각하지 않았다.
atad

기계류는 진보되거나 정교하지 않아도되지만이 예와 같은 일반적인 선을 따라야하는 모든 것 : 소득 분포에 관한 것으로 가정하고, 수학적 모형에 적합하게 사용하고, 합리성에 대한 모형을 확인하고, 합리적으로 적합하면 사 분위수를 계산하는 데 사용하십시오. 그 과정에서 흥미로운 방법을 보여줄 수있는 그래픽 방법을 사용하십시오. (여기서, 관심이있는 lognormality에서 명백한 출발 있다는 것입니다 낮은 소득 수준 : 그 발생하는 이유를 궁금해 것이며, 무엇이 인구에 대해 말할 수 있습니다.)
whuber

+1, 좋은 답변입니다. R을 아직 배워야 할 것 같습니다.
dav

8

댓글이 너무 깁니다 :

whubers의 대답은 다른 것만 큼 좋지만 로그 정규 모델에서 오른쪽으로 치우친 것으로 가정합니다. 이는 일반 인구의 소득에 대해서는 현실적 일 수 있지만 특정 등급의 단일 고용주에 대한 소득에는 해당되지 않을 수 있습니다.

68645017.5

8017.3

17


1
16
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.