메인 콘텐츠로 건너뛰기

quantileExactExclusive

도입 버전: v20.1.0 quantileExact와 유사하게, 이 함수는 숫자 데이터 시퀀스의 정확한 분위수를 계산합니다. 이 함수는 quantileExact와 동일하지만, R-6 method에 설명된 대로 분위수를 계산할 때 exclusive 방법을 사용합니다. 이 함수를 사용하면, 주어진 분위수 p에 대한 보간 공식은 x[floor(n*p)] + (n*p - floor(n*p)) * (x[floor(n*p)+1] - x[floor(n*p)]) 형태가 되며, 여기서 x는 정렬된 배열입니다. 정확한 값을 얻기 위해 전달된 모든 값은 하나의 배열로 합쳐진 뒤 전체 정렬됩니다. 정렬 알고리즘의 복잡도는 O(N·log(N))이며, 여기서 N = std::distance(first, last)입니다. 하나의 쿼리에서 서로 다른 레벨의 quantile* 함수를 여러 개 사용하면 내부 상태가 결합되지 않습니다(즉, 쿼리가 최적의 효율로 동작하지 않습니다). 이 경우 quantiles 함수를 사용하십시오. 구문
quantileExactExclusive(level)(expr)
매개변수
  • level — 분위수 수준입니다. 0과 1 사이(양 끝값 제외)의 상수 부동소수점 수입니다. level 값은 (0.01, 0.99) 범위에서 사용하는 것을 권장합니다. Float*
인수
  • expr — 컬럼 값에 대한 표현식이며, 결과는 숫자 데이터 타입, Date 또는 DateTime이어야 합니다. (U)Int* 또는 Float* 또는 Decimal* 또는 Date 또는 DateTime
반환 값 지정한 수준의 분위수를 반환합니다. Float64 예시 정확한 exclusive 분위수 계산
Query
SELECT quantileExactExclusive(0.25)(number) FROM numbers(5);
Response
┌─quantileExactExclusive(0.25)(number)─┐
│                                  0.5 │
└──────────────────────────────────────┘
여러 분위수 수준 계산하기
Query
SELECT quantileExactExclusive(0.1)(number), quantileExactExclusive(0.9)(number) FROM numbers(10);
Response
┌─quantileExactExclusive(0.1)(number)─┬─quantileExactExclusive(0.9)(number)─┐
│                                 0.4 │                                 8.6 │
└─────────────────────────────────────┴─────────────────────────────────────┘
마지막 수정일 2026년 6월 10일