가중 샘플에 대한 Quantile 정의


12

Quantile을 계산하려는 가중치 샘플이 있습니다. 1

가중치가 동일한 경우 (= 1이든 아니든) 결과는 scipy.stats.scoreatpercentile()R 과 동일 quantile(...,type=7)합니다.

간단한 방법 중 하나는 주어진 가중치를 사용하여 샘플을 "곱셈"하는 것입니다. 이는 중량이 1보다 큰 영역에서 국부적으로 "평평한"ecdf를 효과적으로 제공하는데, 이는 샘플이 실제로 서브 샘플링 일 때 직관적으로 잘못된 접근법처럼 보입니다. 특히, 가중치가 모두 1 인 샘플의 가중치가 모두 2 또는 3 인 샘플과 다른 분위수를 가짐을 의미합니다 (단, [1]에서 참조 된 논문은이 방법을 사용하는 것으로 보입니다).

http://en.wikipedia.org/wiki/Percentile#Weighted_percentile 은 가중 백분위 수에 대한 대체 공식을 제공합니다. 이 공식에서 동일한 값을 가진 인접 샘플을 먼저 결합하고 가중치를 합산해야하는지 여부는 명확하지 않으며, 어떤 경우에도 그 결과는 quantile()비가 중 / 등가 중의 경우 R의 기본 유형 7과 일치하지 않는 것으로 보입니다 . Quantile의 Wikipedia 페이지에는 가중치 적용 사례가 전혀 언급되어 있지 않습니다.

R의 "유형 7"Quantile 함수에 대한 가중 일반화가 있습니까?

[파이썬을 사용하지만 알고리즘 만 찾으면 어떤 언어라도 가능하다]

미디엄

[1] 가중치는 정수입니다. 가중치는 http://infolab.stanford.edu/~manku/papers/98sigmod-quantiles.pdf에 설명 된대로 "축소"및 "출력"조작에서 결합 된 버퍼의 가중치 입니다. 본질적으로 가중 샘플은 완전 비가 중 샘플의 서브 샘플링이며, 하위 샘플의 각 요소 x (i)는 전체 샘플의 무게 (i) 요소를 나타냅니다.


주제는 꽤 오래되었지만 여기에 가중 된 Quantile에 대한 숫자 코드가 있습니다. stackoverflow.com/a/29677616/498892
Alleo

답변:


5

이것은 가능한 한 가지 방법입니다.

각각의 가중치 과 함께 주문 된 샘플 이 있다고 가정 해 봅시다 .X1X2XnW1,W2,,Wn

정의 있도록 및 .

Sk=(k1)Wk+(N1)i=1k1Wi
S1=0Sn=(N1)i=1NWi

분위수의 보간 찾아 되도록 . 그러면 견적이 될 수 있습니다pkSkSnpSk+1Sn

Xk+(Xk+1Xk)pSnSkSk+1Sk.

가 모두 같으면 R-7을 재현 한다는 것을 알게 될 것입니다 . 다른 접근 방식도 있지만 모든 주문 된 가중치를 똑같이 중요하게 취급하지는 않습니다.Wi


샘플의 두 값이 동일하지만 가중치가 다른 경우 문제가 발생할 수 있습니다.
Henry
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.