메인 콘텐츠로 건너뛰기

kolmogorovSmirnovTest

도입 버전: v23.4.0 두 모집단에서 추출한 표본에 Kolmogorov-Smirnov 검정을 적용합니다. 두 표본의 값은 모두 sample_data 컬럼에 저장됩니다. sample_index가 0이면 해당 행의 값은 첫 번째 모집단의 표본에 속합니다. 그렇지 않으면 두 번째 모집단의 표본에 속합니다. 표본은 연속적인 1차원 확률 분포에 속해야 합니다. 구문
kolmogorovSmirnovTest([alternative, computation_method])(sample_data, sample_index)
매개변수
  • alternative — 대립가설입니다. (선택 사항, 기본값: ‘two-sided’.) F(x)G(x)를 각각 첫 번째 분포와 두 번째 분포의 CDF라고 하겠습니다. ‘two-sided’: 귀무가설은 표본이 같은 분포에서 나왔다는 것으로, 예를 들어 모든 x에 대해 F(x) = G(x)입니다. 대립가설은 두 분포가 동일하지 않다는 것입니다. ‘greater’: 귀무가설은 첫 번째 표본의 값이 두 번째 표본의 값보다 확률적으로 더 작다는 것으로, 예를 들어 첫 번째 분포의 CDF가 두 번째 분포의 CDF보다 위에 있으므로 더 왼쪽에 위치합니다. 이는 실제로 모든 x에 대해 F(x) >= G(x)임을 의미합니다. 이 경우 대립가설은 적어도 하나의 x에 대해 F(x) < G(x)라는 것입니다. ‘less’: 귀무가설은 첫 번째 표본의 값이 두 번째 표본의 값보다 확률적으로 더 크다는 것으로, 예를 들어 첫 번째 분포의 CDF가 두 번째 분포의 CDF보다 아래에 있으므로 더 오른쪽에 위치합니다. 이는 실제로 모든 x에 대해 F(x) <= G(x)임을 의미합니다. 이 경우 대립가설은 적어도 하나의 x에 대해 F(x) > G(x)라는 것입니다. String
  • computation_method — p값을 계산하는 방식입니다. (선택 사항, 기본값: ‘auto’.) ‘exact’: 검정 통계량의 정확한 확률분포를 사용해 계산합니다. 컴퓨트 사용량이 크며 작은 표본이 아닌 경우에는 비효율적입니다. ‘asymp’ (‘asymptotic’): 근사값을 사용해 계산합니다. 표본 크기가 크면 정확한 p값과 점근적 p값은 매우 유사합니다. ‘auto’: 표본 수의 최댓값이 10’000보다 작으면 ‘exact’ 방식을 사용합니다. String
인수 반환 값 계산된 통계량과 p값으로 이루어진 두 요소의 튜플을 반환합니다. Tuple(Float64, Float64) 예시 동일 분포 검정
Query
SELECT kolmogorovSmirnovTest('less', 'exact')(value, num)
FROM
(
    SELECT
        randNormal(0, 10) AS value,
        0 AS num
    FROM numbers(10000)
    UNION ALL
    SELECT
        randNormal(0, 10) AS value,
        1 AS num
    FROM numbers(10000)
)
Response
┌─kolmogorovSmirnovTest('less', 'exact')(value, num)─┐
│ (0.009899999999999996,0.37528595205132287)         │
└────────────────────────────────────────────────────┘
서로 다른 분포에 대한 검정
Query
SELECT kolmogorovSmirnovTest('two-sided', 'exact')(value, num)
FROM
(
    SELECT
        randStudentT(10) AS value,
        0 AS num
    FROM numbers(100)
    UNION ALL
    SELECT
        randNormal(0, 10) AS value,
        1 AS num
    FROM numbers(100)
)
Response
┌─kolmogorovSmirnovTest('two-sided', 'exact')(value, num)─┐
│ (0.4100000000000002,6.61735760482795e-8)                │
└─────────────────────────────────────────────────────────┘
관련 항목
마지막 수정일 2026년 6월 10일