> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-fix-nav-issues.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> t-digestアルゴリズムを使用して、数値データの数列に対する近似分位点を計算します。

# quantileTDigestWeighted

<div id="quantileTDigestWeighted">
  ## quantileTDigestWeighted
</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)を近似的に計算します。
この関数は、数列の各要素の重みを考慮します。

最大誤差は 1% です。
メモリ消費量は `log(n)` で、`n` は値の数です。

この関数のパフォーマンスは、[`quantile`](/ja/reference/functions/aggregate-functions/quantile) や [`quantileTiming`](/ja/reference/functions/aggregate-functions/quantileTiming) より劣ります。
State のサイズと精度の比率という点では、この関数は `quantile` より大幅に優れています。

結果はクエリの実行順序に依存するため、非決定論的です。

1 つのクエリ内で異なる levels を持つ複数の `quantile*` 関数を使用すると、内部状態は結合されません (つまり、クエリは本来可能なほど効率的には動作しません) 。
この場合は、[`quantiles`](/ja/reference/functions/aggregate-functions/quantiles#quantiles) 関数を使用してください。

<Note>
  `quantileTDigestWeighted` を[ごく小さなデータセットに使用することは推奨されず](https://github.com/tdunning/t-digest/issues/167#issuecomment-828650275)、大きな誤差が生じる可能性があります。
  この場合は、代わりに [`quantileTDigest`](/ja/reference/functions/aggregate-functions/quantileTDigest) の使用を検討してください。
</Note>

**構文**

```sql theme={null}
quantileTDigestWeighted(level)(expr, weight)
```

**別名**: `medianTDigestWeighted`

**パラメータ**

* `level` — 任意。分位点のレベルを指定します。0 から 1 までの定数の浮動小数点数です。`level` には `[0.01, 0.99]` の範囲の値を使用することを推奨します。デフォルト値: 0.5。`level=0.5` の場合、この関数は中央値を計算します。[`Float*`](/ja/reference/data-types/float)

**引数**

* `expr` — カラムの値に対する式。結果のデータ型は数値型、Date、または DateTime です。[`(U)Int*`](/ja/reference/data-types/int-uint) または [`Float*`](/ja/reference/data-types/float) または [`Decimal*`](/ja/reference/data-types/decimal) または [`Date`](/ja/reference/data-types/date) または [`DateTime`](/ja/reference/data-types/datetime)
* `weight` — 数列の各要素の重みを表すカラム。重みは値の出現回数です。[`UInt*`](/ja/reference/data-types/int-uint)

**戻り値**

指定したレベルの近似分位点。[`Float64`](/ja/reference/data-types/float) または [`Date`](/ja/reference/data-types/date) または [`DateTime`](/ja/reference/data-types/datetime)

**例**

**t-digest を使用した重み付き分位点の計算**

```sql title=Query theme={null}
SELECT quantileTDigestWeighted(number, 1) FROM numbers(10);
```

```response title=Response theme={null}
┌─quantileTDigestWeighted(number, 1)─┐
│                                4.5 │
└────────────────────────────────────┘
```

**関連項目**

* [median](/ja/reference/functions/aggregate-functions/median)
* [quantiles](/ja/reference/functions/aggregate-functions/quantiles)
