Skip to main content

KBO data wrangling & analysis tools

Project description

kbodatatools

이 패키지는 KBO의 경기 자료를 수집하고 간단한 분석 기능을 제공합니다.

설치

사용하시는 os에 따라 cmd나 터미널에서 pip를 통해 패키지를 인스톨 해줍니다. 이 패키지는 파이썬 3.6 버전 이상의 환경에서 사용이 가능합니다.

패키지 인스톨

pip3 install kbodatatools

패키지 임포트

import kbodatatools

사용법

전체(2010 ~ 2019년 10월까지) 게임 자료를 받아오는 방법

위의 방법을 통해 가상환경이 활성화되면 가상환경에서 아래의 순서대로 파이썬 스크립트 파일을 실행하면 전체 게임 자료를 받아올 수 있습니다. 참고로 전체 자료를 다운 받는 과정에는 약 3시간 이상의 시간이 소요됩니다. 아래의 과정을 끝 마치면 sample 폴더에서 2010~2019년 8월까지의 스코어 보드와 타자와 투수 데이터, 기타 정보가 있는 json 파일과 타자, 투수 데이터 그리고 경기 정보에 대한 데이터가 csv 파일로 생성됩니다.


분석 모듈 사용 방법

전체 자료가 만들어지면 선수들의 간단한 타격, 투구 기록을 확인해 볼 수 있습니다. 계산 가능한 기록들의 목록은 다음과 같습니다. 타격 기록: 타율, 타점, 득점, 안타, 1루타, 2루타, 3루타, 홈런, 볼넷(4구), 몸에맞는공, 고의4구, 병살, 출루율, 장타율, 희생플라이, 희생번트, 피삼진이 있습니다. 투구 기록: 방어율, 투구수, 타자수, 홀드, 세이브, 피안타, 삼진, 피홈런, 4사구, 자책점, 승률, 이닝, 이닝당투구수, 승리, 패배, 무승부가 있습니다. 이 기록들은 아래와 같은 방식으로 확인할 수 있습니다. 아래에서와 같이 연도별 혹은 월별 기록으로도 확인할 수 있습니다.

import basic_analysis

basic_analysis.get_player_record(name="이병규",record="타율")
basic_analysis.get_player_record(name="허준혁",record="방어율")
basic_analysis.get_player_record(name="김현수",record="출루율",year=2019)
basic_analysis.get_player_record(name="김광현",record="방어율",year=2019)
basic_analysis.get_player_record(name="김현수",record="출루율",year=2019,month=6)
basic_analysis.get_player_record(name="김광현",record="방어율",year=2019,month=6)

참고로 2019년 힌화의 지성준 선수와 장진혁 선수의 경우 KBO의 리뷰 페이지 상으로 3번째 타석의 기록이 나와있지 않기 때문에 타격 기록의 계산이 맞지 않습니다.

data 폴더의 기초 자료 소개

data 폴더에는 선수 id를 구성하는데 필요한 데이터들과 자료 수집하고 구성하기 위한 데이터들이 있습니다. 그 외에 patch_file이라는 폴더에는 이병규, 허준혁, 이승호 선수의 id 구분을 위한 데이터들이 있습니다. 이 데이터들은 이후 patch.py 파일에서 사용하게 됩니다. record_list.csv 파일은 분석 함수에서 계산할 수 있는 기록들을 모아놓은 데이터 입니다. 이 데이터 파일은 함수 사용시 참고용으로만 사용됩니다. sample 폴더는 이후 경기 자료를 수집하는 코드를 실행시키면 그 결과가 저장되는 폴더입니다. 따라서 이 폴더를 지우게 될 경우 코드 실행시 에러가 발생합니다.

스크립트 실행으로 생성되는 자료 소개

전체 게임의 리뷰 데이터는 all_data.json 파일로 저장됩니다. 이 json 파일을 이용해 2010년에서 2019년 8월까지의 타자(KBO_batter_data_full.csv)와 투수(KBO_pitcher_data_full.csv)의 경기 기록 데이터가 생성됩니다. 이렇게 생성된 타자와 투수 데이터는 스크립트를 실행하여 id가 생성됩니다. 이렇게 생성된 데이터를 이용해 선수들의 간단한 기록을 비교 분석해 볼 수 있습니다. 경기 정보 데이터(KBO_game_info_data.csv)는 2010년에서 2019년 8월 까지 승패와 같은 결과와 심판, 구장 등의 경기 정보가 저장됩니다.

참고 링크

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for kbodatatools, version 0.0.1
Filename, size File type Python version Upload date Hashes
Filename, size kbodatatools-0.0.32-py3-none-any.whl (2.9 MB) File type Wheel Python version py3 Upload date Hashes View
Filename, size kbodatatools-0.0.33-py3-none-any.whl (2.9 MB) File type Wheel Python version py3 Upload date Hashes View
Filename, size kbodatatools-0.0.34-py3-none-any.whl (2.9 MB) File type Wheel Python version py3 Upload date Hashes View
Filename, size kbodatatools-0.0.35-py3-none-any.whl (2.9 MB) File type Wheel Python version py3 Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page