METHODOLOGY
예측 방법론
데이터 변환
wehoop CSV를 우리 스키마로 정규화하고, 일정의 종료 표시가 최신 박스보다 -84경기 뒤처진 부분은 박스로 보정했어요. 원본 standings의 300경기 집계는 정규시즌 박스와 충돌해 217경기에서 전적을 재계산했고, 순위 비적용 결승 1경기는 제외했어요.
일정·순위·박스 연결
일정 333경기는 경기 ID와 두 팀 ID를 기준으로 팀 허브와 연결하고, 종료 박스 218경기는 같은 키로 팀·선수 기록을 결합해요. 순위의 승·패 합계는 순위에 반영되는 종료 경기 217건의 승자와 패자를 각각 한 번씩 세어 만듭니다. 그래서 일정 상태, 순위 전적, 상세 박스가 서로 다른 숫자를 말하지 않는지 갱신 때 함께 검사할 수 있어요.
순위 계산
정규시즌 종료 박스마다 이긴 팀에 1승, 진 팀에 1패를 더하고 팀 득점과 상대 득점을 누적한다. 전체 순번은 전적 비율, 누적 득실 차, 승수 순으로 정렬한다. 컨퍼런스 순번은 이 전체 정렬에서 동부와 서부를 각각 추려 부여하고, 경기 차는 해당 컨퍼런스 선두의 승·패와 비교해 계산한다. 이 순서는 사이트 안에서 일정을 비교하기 위한 일관된 정렬 기준이며 리그의 별도 타이브레이커 판정을 대신하지 않는다.
시간과 라이브 상태
모든 경기 시작 시각은 하나의 UTC 시각을 기준으로 한국 시간과 홈팀 경기장 시간대로 각각 변환해요. LIVE 표시는 스코어보드가 실제 인게임 상태를 보낼 때만 사용하고, 종료 상태는 상세 박스와 다시 대조합니다. 같은 경기를 두 시간대로 보여 주되 경기 ID와 상태는 하나로 유지하는 방식이에요. 날짜 묶음도 한국 시간 기준으로 만들기 때문에 자정 전후 경기가 다른 날로 잘못 갈라지지 않습니다.
분석 공개 기준
출처, 최소 표본, 경기 전 24시간 안의 라인업·부상 확인, 교정 절차, 서로 다른 두 가지 이상의 설명 가능한 근거가 모두 있어야 경기 전 분석을 고정해요. 현재 공개 분석은 0건이며, 기준을 통과한 기록만 분석 지면과 검증 원장에 함께 나타납니다.
검증
경기 전 고정한 분석만 종료 박스와 대조해 다음 갱신에서 일치·불일치로 기록해요. 게시 시점의 문장과 근거는 결과가 나온 뒤 바꾸지 않기 때문에, 당시 판단과 실제 종료 기록을 같은 기준으로 비교할 수 있어요.
해석 범위와 한계
일정은 경기 ID·시각·상태를, 박스는 종료 경기의 팀·선수 기록을, 로스터는 해당 스냅샷의 선수 소속과 상태를 말한다. 박스에 나타난 득점·리바운드·어시스트·턴오버는 경기 결과를 설명하는 관찰값이지 특정 선수 상태나 전술이 결과를 만들었다는 인과 판정이 아니다. 순위도 반영된 정규시즌 종료 기록의 누계이므로 다음 경기를 단독으로 단정하는 근거로 쓰지 않는다. 각 원천 파일에는 갱신 시각과 해시를 남겨, 같은 화면의 숫자가 어느 산출물에서 왔는지 다시 확인할 수 있게 한다.