> ## 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.

> `gini` 函数计算有限、非负数值列的基尼系数，用于衡量分布的不平等程度。

# gini

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

引入版本：v26.8.0

计算一列有限且非负的数值的 [基尼系数](https://en.wikipedia.org/wiki/Gini_coefficient)，用于衡量分布的不平等程度。

结果范围从 `0` (完全平等：所有值均相同) 到随 `n` 增大而趋近于 `1` 的最大值 (完全不平等：一个值占有全部，其余值均为零) 。对于包含 `n` 个值的有限样本，最大值为 `(n - 1) / n`。

所有传入的值均以其输入类型收集，并在进行数值稳定的最终计算前排序。该系数根据归一化的相邻成对差异计算，并以 `Float64` 返回，因此会按 `Float64` 精度进行舍入。该函数消耗 `O(n)` 内存，其中 `n` 为传入值的数量。会跳过 `NaN` 值，而无限值和负值将被拒绝。

**语法**

```sql theme={null}
gini(expr)
```

**参数**

* `expr` — 结果为有限非负数值的表达式。[`(U)Int*`](/docs/zh/reference/data-types/int-uint)、[`Float*`](/docs/zh/reference/data-types/float) 或 [`Decimal`](/docs/zh/reference/data-types/decimal)

**返回值**

基尼系数；如果值的数量少于 2 个，或所有值之和为 0，则返回 `NaN`。[`Float64`](/docs/zh/reference/data-types/float)

**示例**

**相等值**

```sql title=Query theme={null}
SELECT gini(x) FROM (SELECT 100 AS x FROM numbers(10));
```

```response title=Response theme={null}
┌─gini(x)─┐
│       0 │
└─────────┘
```

**偏斜分布**

```sql title=Query theme={null}
SELECT gini(x) FROM (SELECT number AS x FROM numbers(10));
```

```response title=Response theme={null}
┌─────────────gini(x)─┐
│ 0.36666666666666664 │
└─────────────────────┘
```
