메인 콘텐츠로 건너뛰기

quantileExactWeightedInterpolated

도입 버전: v24.10.0 각 요소의 가중치를 고려해 선형 보간을 사용하여 숫자 데이터 시퀀스의 분위수를 계산합니다. 보간된 값을 구하기 위해 전달된 모든 값을 배열로 결합한 다음, 각 값에 해당하는 가중치에 따라 정렬합니다. 그런 다음 가중치를 기반으로 누적 분포를 구성한 후, 가중치와 값을 사용해 분위수를 계산하는 가중 백분위수 방법으로 분위수 보간을 수행합니다. 하나의 쿼리에서 수준이 서로 다른 여러 quantile* 함수를 사용하면 내부 상태가 결합되지 않습니다(즉, 쿼리가 최적의 효율로 동작하지 않습니다). 이 경우 quantiles 함수를 사용하십시오. quantileExactWeightedInterpolatedquantileInterpolatedWeighted보다 더 정확하므로, quantileInterpolatedWeighted 대신 quantileExactWeightedInterpolated를 사용하는 것을 강력히 권장합니다. 자세한 내용은 아래 예시를 참조하십시오. 구문
quantileExactWeightedInterpolated(level)(expr, weight)
별칭: medianExactWeightedInterpolated 매개변수
  • level — 선택 사항입니다. 분위수 수준입니다. 0에서 1 사이의 상수 부동소수점 수입니다. level 값은 [0.01, 0.99] 범위에서 사용하는 것을 권장합니다. 기본값은 0.5입니다. level=0.5이면 함수는 중앙값을 계산합니다. Float*
인수
  • expr — 컬럼 값에 대한 표현식이며, 결과는 숫자 데이터 타입, Date 또는 DateTime이어야 합니다. (U)Int* 또는 Float* 또는 Decimal* 또는 Date 또는 DateTime
  • weight — 시퀀스 구성원의 가중치를 담은 컬럼입니다. 가중치는 값이 나타나는 횟수를 의미합니다. UInt*
반환 값 지정된 수준의 분위수입니다. Float64 또는 Date 또는 DateTime 예시 정확한 가중 보간 분위수 계산
Query
SELECT quantileExactWeightedInterpolated(n, val) FROM t;
Response
┌─quantileExactWeightedInterpolated(n, val)─┐
│                                       1.5 │
└───────────────────────────────────────────┘
quantileInterpolatedWeighted 대신 quantileExactWeightedInterpolated를 사용하는 것이 좋습니다
Query
SELECT
    quantileExactWeightedInterpolated(0.99)(number, 1),
    quantile(0.99)(number),
    quantileInterpolatedWeighted(0.99)(number, 1)
FROM numbers(9)
Response
┌─quantileExactWeightedInterpolated(0.99)(number, 1)─┬─quantile(0.99)(number)─┬─quantileInterpolatedWeighted(0.99)(number, 1)─┐
│                                               7.92 │                   7.92 │                                             8 │
└────────────────────────────────────────────────────┴────────────────────────┴───────────────────────────────────────────────┘
관련 항목
마지막 수정일 2026년 6월 10일