<aside>
2229022 통계학과 이승연
2229023 통계학과 이은나
2229027 통계학과 이지민
2276302 통계학과 조서연
2229041 통계학과 허다현
</aside>
서론
<리그 오브 레전드> 통칭 <롤>은 10년이 넘게 사랑받고 있는 인기 게임이다. 하지만 롤은 이미 고인 게임으로, 신규 유저에게는 진입 장벽이 높은 게임이다. 본 프로젝트는 상위 티어 플레이어의 인게임 데이터를 분석해 신규 유저에게 기본적인 게임 진행 방식을 시각화로 쉽게 알려주는 것을 목표로 한다.
데이터
League of Legends(LOL) - Ranked Games 2020
- 100,800 데이터 (한국 상위 랭커, 2020)
00. 전처리
캐글 데이터에서 제공된 원시 데이터는 분석에 직접 활용하기 어려운 두 가지 주요 문제점을 내포하고 있었다.
- 데이터 형식 및 구조의 비호환성: 데이터는 R이 아닌 파이썬 Pandas 라이브러리 형식으로 저장되어 있었다. 또한, 데이터프레임 내부에 또 다른 데이터프레임이 중첩된 다중 구조를 가지고 있었으며, 특히 경기 정보를 담은
match_data는 삼중 구조로 이루어져 있었다. 이러한 구조는 개인별 지표를 분석하는 데 어려움을 야기했다.
- 라인(포지션) 정보의 오류: 두 명의 플레이어가 함께 게임을 하는 '듀오' 시스템으로 인해 라인 정보가 잘못 기재된 경우가 발견되었다. 예를 들어, 미드 라이너와 정글러가 함께 플레이한 경우 두 플레이어 모두 '미드'로 표기되는 등, 실제 게임 규칙상 불가능한 포지션 중복 오류가 존재했다.
위 문제들을 해결하기 위해 다음과 같은 전처리 절차를 수행했다.
- 데이터 구조 평탄화(Flattening) 및 통합: 데이터를 R에서 사용하고 구조를 단순화하기 위해 파이썬을 이용한 1차 전처리를 진행했다. 기존의 '경기(match)' 중심 데이터 구조를 '플레이어' 중심 구조로 변경하여, 한 경기에 참여한 10명 플레이어의 정보가 각각의 행으로 구성되도록 데이터를 평탄화했다. 이 과정에서
loser_data와 winner_data에 포함된 주요 팀 정보를 각 플레이어 데이터에 통합했다.
- 라인 정보 복원: 잘못된 라인 정보를 수정하기 위해 두 가지 기준을 적용했다.
- 챔피언 정보 활용: 공식 사이트의 챔피언별 추천 라인 정보를 크롤링하여 데이터를 보정했다. 상위 티어 플레이어들은 정석적인 플레이를 할 것이라는 점을 고려하여 이 기준을 적용했다.
- 아이템 정보 활용: 정글러가 '강타'를 필수적으로 사용하는 것과 같이, 특정 포지션을 명확하게 나타내는 아이템 정보를 기준으로 중복된 라인 정보를 수정했다.
상기 전처리 과정을 통해, 전체 약 10만 개의 데이터 중 약 23,000개 경기의 라인 데이터를 성공적으로 복원했다. 이를 통해 분석에 필요한 신뢰도 높은 데이터를 최종적으로 확보했다.
01. 리그 오브 레전드
분석을 시작하기에 앞서, <리그 오브 레전드>에서 사용되는 기본적인 용어를 설명한다.