2026년 8월 29일

1단계: 백분위수와 K-익명성 (이 기록은 전국에서 상위 몇 %일까?)

글을 쓰며이 글의 주제와 흐름은 작성자의 생각이며, 본문 작성에 AI의 도움을 받았습니다.

통계 분석 이해를 위한 4단계 로드맵

splits 프로젝트는 생존분석, 코호트 모델, K-익명성, 베이지안 레이팅 등 통계학적 기법들을 활용해 쇼트트랙 기록을 정밀하게 분석합니다.

한눈에 보기다이어그램
다이어그램 렌더링 중...

개념 1: 500m 45.1초는 잘 탄 걸까요, 못 탄 걸까요?

쇼트트랙에서 기록(시간)은 누구와 비교하느냐에 따라 의미가 달라집니다.

  • 성인 남자 국가대표에게 45.1초는 탈락 수준의 느린 기록입니다. (국가대표 기준 약 40~41초)
  • 반면 초등학교 3학년(만 9세)에게 45.1초는 전국 대회 결승을 휩쓰는 압도적인 1위 기록입니다.

따라서 기록을 제대로 분석하려면 반드시 출생연도 × 성별 × 종목거리 단위로 데이터를 세분화하여(Group-by) 비교 기준선을 만들어야 합니다.


개념 2: 왜 평균(Mean) 대신 백분위수(Quantiles)를 쓸까요?

학교 성적을 낼 때는 흔히 평균을 쓰지만, 스포츠 기록 분석에서는 평균이 큰 착시를 만듭니다.

넘어짐(Fall)의 함정

쇼트트랙에서는 경기 중 선수가 빙판에 걸려 넘어지는 일이 자주 발생합니다.

5명의 500m 기록: 42초, 43초, 43초, 44초, 그리고 120초 (넘어져서 링크장을 한 바퀴 완주한 경우)

  • 평균(Mean): $(42 + 43 + 43 + 44 + 120) \div 5 = 58.4초
    단 한 번 넘어진 기록 때문에 집단 전체의 기준선이 왜곡됩니다.
  • 중앙값(p50p_{50}, Median): 딱 가운데 순위인 43초
    120초짜리 이상치(Outlier)가 있어도 기준선이 흔들리지 않습니다.

백분위수 지표의 활용

기록을 크기순으로 나열한 뒤 특정 위치의 값을 산출합니다.

  • p10p_{10} (상위 10%): 해당 연령대 최상위권의 빠른 기록
  • p50p_{50} (상위 50%, 중앙값): 중간 수준의 기준 기록
  • p90p_{90} (상위 90%): 해당 연령대 후미 그룹의 기록

개념 3: K-익명성(k10k \ge 10)이란 무엇이고 왜 필요할까요?

이 프로젝트는 통계 분석이면서 실제 선수들의 데이터를 다루는 공공 플랫폼입니다.

신원 재식별의 위험

만약 1960년생 × 여자 × 3000m 그룹을 집계했을 때 전국에 선수가 단 1명뿐이었다고 가정해 보겠습니다. 이 선수의 p50p_{50} 기록을 표에 공개하는 순간, 체육회 사이트에서 검색해 "1960년생 여자 3000m 선수는 OOO 한 명뿐이니 이 통계는 OOO 선수의 개인 기록이다"라고 신원을 특정(Re-identification)할 수 있게 됩니다.

해결책: 10명 미만은 비식별 처리 (k10k \ge 10)

  • 그룹 내 인원수(NN)가 10명 이상일 때만 백분위 숫자를 공개합니다.
  • 10명 미만인 소수 그룹은 숫자를 숨기고 데이터 부족으로 마스킹 처리합니다.

개념 4: 실제 데이터로 확인하기 (stats_distribution.csv)

실제 stats_distribution.csv를 열어보면 이 원리가 적용되어 있습니다.

[실제 CSV 데이터 샘플: stats_distribution.csv]
출생연도 | 성별 | 거리 | 기록_인원수 | 기록_p10 | 기록_p50 (중앙값) | 기록_p90 | 순위_p50
--------------------------------------------------------------------------------------
1950    | 남   | 1500 | 데이터 부족  | 데이터 부족 | 데이터 부족       | 데이터 부족 | 데이터 부족  <-- k < 10 (신원 보호)
1990    | 남   | 500  | 11명        | 41.99초   | 43.38초          | 45.09초   | 6위         <-- k >= 10 (정상 통계)
1992    | 여   | 500  | 11명        | 45.10초   | 46.72초          | 60.37초   | 4위
  • 웹사이트(splits.kr)의 동작
    사용자가 출생연도(예: 2012년생)와 거리(500m)를 입력하면, 이 기준표를 바탕으로 "상위 15% 구간에 위치합니다"라는 분포 그래프를 보여줍니다.
KHLogo