gini
gini
유한하고 음수가 아닌 숫자 값들로 이루어진 컬럼의 지니 계수(Gini coefficient)를 계산하는 집계 함수예요. 분포의 불평등(inequality) 정도를 나타내는 지표입니다.
출처: 문서
본문
도입 버전: v26.8.0
유한하고 음수가 아닌 숫자 값들로 이루어진 컬럼의 지니 계수를 계산합니다. 분포의 불평등 정도를 나타내는 지표입니다.
결과는 0(완전 평등: 모든 값이 동일)부터 n이 커질수록 1에 가까워지는 최댓값(완전 불평등: 하나의 값이 전부를 차지하고 나머지는 0)까지의 범위를 갖습니다. 유한한 n개의 값으로 이루어진 표본에서는 최댓값이 (n - 1) / n이 됩니다.
전달된 모든 값은 입력 타입 그대로 수집된 뒤 정렬되어, 수치적으로 안정적인 최종 계산이 이뤄집니다. 이 계수는 정규화된 인접 쌍별 차이(normalized adjacent pairwise differences)로 계산되며 Float64로 반환되기 때문에 Float64 정밀도로 반올림됩니다. 따라서 이 함수는 O(n) 메모리를 소비합니다(여기서 n은 전달된 값의 개수). NaN 값은 건너뛰고, 무한대와 음수 값은 거부됩니다.
구문 (Syntax)
gini(expr)
인자 (Arguments)
반환 값
지니 계수를 반환합니다. 값이 2개보다 적거나 값의 합이 0이면 NaN을 반환합니다. Float64
예제
동일한 값들
SELECT gini(x) FROM (SELECT 100 AS x FROM numbers(10));
┌─gini(x)─┐
│ 0 │
└─────────┘
편향된 분포
SELECT gini(x) FROM (SELECT number AS x FROM numbers(10));
┌─────────────gini(x)─┐
│ 0.36666666666666664 │
└─────────────────────┘