gini
Introduzido em: v26.8.0
Calcula o coeficiente de Gini de uma coluna de valores numéricos finitos e não negativos, uma medida de desigualdade em uma distribuição.
O resultado varia de 0 (igualdade perfeita: todos os valores são iguais) até um máximo que se aproxima de 1 à medida que n aumenta (desigualdade perfeita: um valor detém tudo e os demais são zero). Para uma amostra finita de n valores, o máximo é (n - 1) / n.
Todos os valores fornecidos são coletados em seu tipo de entrada e, em seguida, ordenados antes do cálculo final numericamente estável. O coeficiente é calculado a partir de diferenças normalizadas entre pares adjacentes e retornado como Float64; portanto, é arredondado para a precisão de Float64. Assim, a função consome memória O(n), em que n é o número de valores fornecidos. Valores NaN são ignorados, enquanto valores infinitos e negativos são rejeitados.
Sintaxe
gini(expr)Argumentos
expr— Expressão que resulta em valores numéricos finitos e não negativos.(U)Int*,Float*ouDecimal
Valor retornado
O coeficiente de Gini ou NaN se houver menos de 2 valores ou se a soma dos valores for 0. Float64
Exemplos
Valores iguais
SELECT gini(x) FROM (SELECT 100 AS x FROM numbers(10));┌─gini(x)─┐
│ 0 │
└─────────┘Distribuição assimétrica
SELECT gini(x) FROM (SELECT number AS x FROM numbers(10));┌─────────────gini(x)─┐
│ 0.36666666666666664 │
└─────────────────────┘