통계 함수
통계 함수 (Statistical Functions)
Pinot은 분산(variance), 표준편차, 공분산, 왜도, 첨도를 계산하는 통계 집계 함수를 제공해요. 이 함수들은 데이터 분석, 품질 모니터링, 데이터 분포 이해에 유용합니다.
출처: 문서
본문
분산 함수 (Variance Functions)
VAR_POP / VARPOP
VAR_POP(col)
숫자 컬럼의 모집단 분산을 Double로 반환해요. 모집단 분산은 모든 데이터 포인트를 사용해 값이 평균에서 얼마나 퍼져 있는지 측정합니다.
SELECT VAR_POP(playerScore) AS score_variance
FROM gameStats
VAR_SAMP / VARSAMP
VAR_SAMP(col)
숫자 컬럼의 표본 분산을 Double로 반환해요. 표본 분산은 베셀 보정(Bessel's correction)을 사용해(N 대신 N-1로 나누기) 표본을 다룰 때 불편 추정량이 됩니다.
SELECT VAR_SAMP(responseTime) AS response_variance
FROM apiMetrics
표준편차 함수 (Standard Deviation Functions)
STDDEV_POP / STDDEVPOP
STDDEV_POP(col)
숫자 컬럼의 모집단 표준편차를 Double로 반환해요. 모집단 분산의 제곱근입니다.
SELECT STDDEV_POP(latency) AS latency_stddev
FROM requestMetrics
STDDEV_SAMP / STDDEVSAMP
STDDEV_SAMP(col)
숫자 컬럼의 표본 표준편차를 Double로 반환해요. 표본 분산의 제곱근입니다.
SELECT STDDEV_SAMP(revenue) AS revenue_stddev
FROM salesData
공분산 함수 (Covariance Functions)
COVAR_POP / COVARPOP
COVAR_POP(col1, col2)
두 숫자 컬럼 간의 모집단 공분산을 Double로 반환해요. 공분산은 두 변수가 어떻게 함께 변하는지 측정합니다.
SELECT COVAR_POP(adSpend, revenue) AS spend_revenue_covariance
FROM campaignMetrics
COVAR_SAMP / COVARSAMP
COVAR_SAMP(col1, col2)
두 숫자 컬럼 간의 표본 공분산을 Double로 반환해요.
SELECT COVAR_SAMP(temperature, energyUsage) AS temp_energy_covariance
FROM sensorData
분포 형태 함수 (Distribution Shape Functions)
SKEWNESS
SKEWNESS(col)
숫자 컬럼의 왜도를 Double로 반환해요. 왜도는 확률 분포의 비대칭성을 측정합니다. 양의 왜도는 오른쪽 꼬리가 더 길다는 것을, 음의 왜도는 왼쪽 꼬리가 더 길다는 것을 나타내요.
SELECT SKEWNESS(orderAmount) AS amount_skewness
FROM orders
KURTOSIS
KURTOSIS(col)
숫자 컬럼의 첨도를 Double로 반환해요. 첨도는 확률 분포의 꼬리 두께를 측정합니다. 첨도가 높을수록 이상치가 더 많다는 것(더 두꺼운 꼬리)을 나타냅니다.
SELECT KURTOSIS(responseTime) AS latency_kurtosis
FROM apiMetrics
참고 사항
- 고급 null 처리를 활성화하면 공분산 함수는 입력 중 하나라도 null인 행을 건너뜁니다. 기여하는 행이 없으면
NULL을 반환하며,COVAR_SAMP는 행이 2개 미만일 때도NULL을 반환해요. 고급 null 처리가 없으면 Pinot은 컬럼 기본 null 값을 사용합니다. - 이 함수들은 숫자 컬럼에서만 동작해요(
INT,LONG,FLOAT,DOUBLE). - 분산과 표준편차는 전체 모집단을 가질 때
_POP변형을, 표본을 다룰 때_SAMP변형을 사용하세요. - 모든 통계 함수는 단일 스테이지 엔진(SSE)과 다중 스테이지 엔진(MSE)에서 모두 지원됩니다.