> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

> 각 요소의 가중치를 고려해, 여러 수준에서 t-digest 알고리즘으로 여러 개의 근사 분위수를 동시에 계산합니다.

# quantilesTDigestWeighted

<div id="quantilesTDigestWeighted">
  ## quantilesTDigestWeighted
</div>

도입 버전: v20.1.0

[t-digest](https://github.com/tdunning/t-digest/blob/master/docs/t-digest-paper/histo.pdf) 알고리즘을 사용해 서로 다른 수준에서 숫자형 데이터 시퀀스의 여러 근사 [분위수](https://en.wikipedia.org/wiki/Quantile)를 동시에 계산합니다.
이 함수는 시퀀스 각 구성원의 가중치를 반영합니다.

이 함수는 [`quantileTDigestWeighted`](/docs/ko/reference/functions/aggregate-functions/quantileTDigestWeighted)와 동일하지만, 단일 패스로 여러 분위수 수준을 계산할 수 있으므로 개별 분위수 함수를 각각 호출하는 것보다 더 효율적입니다.

최대 오류는 1%입니다. 메모리 사용량은 `log(n)`이며, 여기서 `n`은 값의 개수입니다.

이 함수의 성능은 [`quantiles`](/docs/ko/reference/functions/aggregate-functions/quantiles) 또는 [`quantilesTiming`](/docs/ko/reference/functions/aggregate-functions/quantilesTiming)보다 낮습니다.
State 크기 대비 정밀도 비율 측면에서는 이 함수가 `quantiles`보다 훨씬 우수합니다.

결과는 쿼리 실행 순서에 따라 달라지므로 비결정적입니다.

<Note>
  `quantilesTDigestWeighted`는 [작은 데이터 집합에 사용하는 것을 권장하지 않으며](https://github.com/tdunning/t-digest/issues/167#issuecomment-828650275), 상당한 오류가 발생할 수 있습니다.
  이 경우에는 대신 [`quantilesTDigest`](/docs/ko/reference/functions/aggregate-functions/quantilesTDigest) 사용을 고려하십시오.
</Note>

**구문**

```sql theme={null}
quantilesTDigestWeighted(level1, level2, ...)(expr, weight)
```

**매개변수**

* `level` — 분위수 수준입니다. 0부터 1 사이의 상수 부동소수점 수를 1개 이상 지정합니다. `level` 값은 `[0.01, 0.99]` 범위에서 사용하는 것을 권장합니다. [`Float*`](/docs/ko/reference/data-types/float)

**인수**

* `expr` — 컬럼 값에 대한 표현식으로, 결과는 숫자형 데이터 타입, `Date` 또는 `DateTime`이어야 합니다. [`(U)Int*`](/docs/ko/reference/data-types/int-uint) 또는 [`Float*`](/docs/ko/reference/data-types/float) 또는 [`Date`](/docs/ko/reference/data-types/date) 또는 [`DateTime`](/docs/ko/reference/data-types/datetime)
* `weight` — 시퀀스 원소의 가중치가 들어 있는 컬럼입니다. 가중치는 값이 나타나는 횟수를 의미합니다. [`UInt*`](/docs/ko/reference/data-types/int-uint)

**반환 값**

지정한 수준의 근사 분위수를, 수준을 지정한 순서와 동일한 순서로 담은 배열을 반환합니다. `Date` 및 `DateTime` 입력의 경우 출력 형식은 입력 형식과 일치합니다. [`Array(Float32)`](/docs/ko/reference/data-types/array) 또는 [`Array(Date)`](/docs/ko/reference/data-types/array) 또는 [`Array(DateTime)`](/docs/ko/reference/data-types/array)

**예시**

**t-digest를 사용한 다중 가중 분위수 계산**

```sql title=Query theme={null}
SELECT quantilesTDigestWeighted(0.25, 0.5, 0.75)(number, 1) FROM numbers(100);
```

```response title=Response theme={null}
┌─quantilesTDigestWeighted(0.25, 0.5, 0.75)(number, 1)──┐
│ [24.75,49.5,74.25]                                    │
└───────────────────────────────────────────────────────┘
```
