Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

gini

gini

Introducido en: v26.8.0

Calcula el coeficiente de Gini de una columna de valores numéricos finitos no negativos, una medida de la desigualdad en una distribución.

El resultado va de 0 (igualdad perfecta: todos los valores son iguales) a un máximo que se aproxima a 1 a medida que aumenta n (desigualdad perfecta: un valor concentra todo y los demás son cero). Para una muestra finita de n valores, el máximo es (n - 1) / n.

Todos los valores proporcionados se recopilan en su tipo de entrada y luego se ordenan antes de realizar un cálculo final numéricamente estable. El coeficiente se calcula a partir de diferencias normalizadas entre pares adyacentes y se devuelve como Float64, por lo que se redondea con la precisión de Float64. Por lo tanto, la función consume O(n) de memoria, donde n es el número de valores proporcionados. Los valores NaN se omiten, mientras que los valores infinitos y negativos se rechazan.

Sintaxis

gini(expr)

Argumentos

  • expr — Expresión que produce valores numéricos finitos y no negativos. (U)Int*, Float* o Decimal

Valor devuelto

El coeficiente de Gini, o NaN si hay menos de 2 valores o si la suma de los valores es 0. Float64

Ejemplos

Valores iguales

SELECT gini(x) FROM (SELECT 100 AS x FROM numbers(10));
┌─gini(x)─┐
│       0 │
└─────────┘

Distribución sesgada

SELECT gini(x) FROM (SELECT number AS x FROM numbers(10));
┌─────────────gini(x)─┐
│ 0.36666666666666664 │
└─────────────────────┘
Navigation