'2014/08'에 해당되는 글 2건

  1. 2014.08.28 통계적 방법으로 2014 프로야구 4위 예상해 보기 (6)
  2. 2014.08.28 간단한 타자들의 선구안 비교 (2)


저는 두산이 4위를 하기 원합니다...


8월 들어 프로야구 팬들에게 가장 큰 화두는 단연 4위 싸움에서 누가 과연 이길 것인가 하는 문제일 것입니다. 2014시즌 827일 기준 성적으로 보자면, 삼성이 승률 0.670으로 1, 그리고 넥센과 NC2,3위권을 공고히 하고 있으며 4LG부터 9위 한화의 승차는 5.5게임입니다. 그나마 최근 LG가 좋은 페이스를 보이며 4위와 9위까지의 승차가 벌어졌네요. 하지만 5위부터 9위는 1.5게임차가 나는 상황이고 약 25게임 정도가 남은 상황이라 LG가 승차를 벌렸다고 해도 안심할 수는 없는 상황이라고 생각합니다. 그런 의미에서, 한 번 이 뜨거운 감자에 손을 대 볼 생각입니다.

 

1. 상대팀별 승률 예상

 

위의 제목에서 통계적 방법이라고 했듯이, 먼저 팀의 기대 승률을 알아보기 위해 가끔씩 사용되는 Log5 System을 사용할 예정입니다. 물론 Log5 System은 승률이 A이고 B인 팀이 맞붙었을 때의 승률 계산에 이용되므로 약간 핀트가 다르다고 볼 수 있는데, 저는 팀의 기대 승률, 기대 승수를 알기 위해서 각 팀의 상대 전적과 남은 경기를 이용할 것이기에 Log5 System을 이용하는 것이 무리는 아니라고 생각합니다. 그러기 위해서 먼저 피타고리안 승률을 계산할 필요가 있겠군요. 다만 한 가지 걸리는 것은 이번 시즌의 경우 워낙에 점수가 많이 나다 보니 가끔가다가 24:5 같은 경기가 벌어져서 피타고리안 승률의 예측력이 조금 떨어질 가능성이 있다는 것입니다...하지만 이 부분의 경우 투고타저라도 2012시즌의 볼티모어(9369, 득실 마진 +7...)같은 문제도 있고 해서 큰 문제는 아니라고 생각하고 계산할 때 그냥 때려 박을 생각입니다.(...) 원래는 홈과 원정을 나눠서 해 보려고 했는데(의외로 이 작업은 이틀만에 다 했습니다...) 그게 홈 원정 승률 차이가 큰 차이도 없고 해서 그냥 통합해서 하기로 하였습니다. (집에서 다른 거 더 할 걸...) 보통은 피타고리안 승률 적용시 상수를 2, 혹은 1.85 정도로 놓는데 저는 (경기별 득점+실점)^0.287로 하여 상수를 계산하고 피타고리안 승률을 계산하였습니다. 결과는 아래 표와 같습니다.


 팀

피타고리안 승률 

 삼성

0.645 

 넥센

0.566 

 NC

0.610 

LG

0.499 

 롯데

0.500 

 두산

0.459 

SK

0.451 

KIA 

0.420 

 한화

0.352 


이를 통해 Log5 System을 계산할 예정입니다. 먼저, Log5 System 계산을 위해 각 팀의 능력(?)을 계산합니다. 왜냐 하면 Log5 System의 계산에서는 각 팀의 능력에 대하여 a팀을 A, b팀을 B라고 할 때 a팀은 A/(A+B)의 승률을, b팀은 B/(A+B)의 승률을 기록할 것으로 예상하기 때문입니다. 이 때 승률 0.5인 팀은 능력도 0.5로 계산되며, 이에 맞춰서 능력을 계산하시면 됩니다. (예를 들자면 승률이 a이고 능력이 A인 경우 A=a/(2(1-a)).) 그리고 이 능력을 계산했으면, 위에서 말한 식대로 각 팀간의 상대승률을 계산합니다. 그 승률은 아래의 표와 같습니다. (읽는 법은 한국야구위원회에 나오는 팀간 승패표 보는 것과 같습니다.)

 


2. 기대승률과 기대순위 예상

 

다음은 남은 경기들과 위의 상대승률을 이용하여 예상되는 승수를 계산하는 것입니다. 여기에서 저는 앞으로 무승부는 없는 것으로 가정했습니다. 원래는 무승부도 계산에 넣어야 하겠지만, 그 경우 계산이 복잡해지고 또한 무승부의 빈도가 적기 때문에 계산하지 않기로 하였습니다. 이 때 팀의 승은 소수점으로 나타날 수 없기 때문에 반올림한 후 승과 패를 계산하기로 하였습니다. 그 결과 각 팀의 예상 승, , 패는 다음과 같습니다.

 



3. 4위 확률 계산

 

이제 4위 확률을 계산해야겠는데요, 이 때 원래는 남은 경기와 승률의 모든 경우를 계산해야겠지만 그 작업은 혼자 하기에는 너무 많은 작업이 필요하므로 여기에서 푸아송 분포를 도입하기로 하였습니다. 승패의 모든 경우에 대하여 분포를 계산하면 되므로(=이산확률로 계산될 것이기 때문에) 푸아송 분포를 따를 것이라고 생각했기 때문입니다. 위에서 남은 경기의 승패를 계산한 후 푸아송 분포로 각 팀의 각각의 승률의 분포를 계산하기로 한 것입니다. 그리고 그 그래프는 아래와 같습니다.

 

각 팀별 승률 분포 그래프 <그래프별 색깔은 제가 지정하는 방법을 몰라서 색깔이 비슷비슷합니다. 죄송합니다.>


이제 4강 확률을 계산할 차례입니다. 삼성이 사실상 4위를 할 확률은 거의 없고(남은 모든 게임을 다 져도 0.532....) 넥센과 NC는 아주 약간씩 있기는 한데 그게 계산에 큰 변화를 줄 만큼 크지는 않기 때문에 이 경우도 4위를 할 확률은 없다고 가정하고 계산하기로 하였습니다. 그 과정은....사실 아래와 같은 노가다로 일일이 계산했습니다.

 


위와 같이 다른 팀들이 그 팀의 승률보다 낮을 확률에 대한 경우를 일일이 계산하고 각 확률들을 곱한 후 팀의 각 승률마다 4위가 될 확률들을 더하여 전체의 4위 확률을 더하는 겁니다.

그 결과는 아래의 표와 같습니다. 이게 약간의 오차가 생겨서 값을 더해보니 확률이 1이 안 나와서(아마 위의 세 팀이 4위를 할 확률 등등일 겁니다.) 확률의 합이 1이 되도록 조정을 했습니다.

 

4. 결과

 

아래의 표를 확인하시길 바랍니다.


 팀

4위 확률 

 LG

38.3% 

 롯데

22.2% 

 두산

21.6% 

 SK

8.0% 

 KIA

8.0% 

 한화

1.9% 

 

위에서 보듯이 LG4위를 할 확률이 현재로는 가장 높다고 생각됩니다. 4위 확률 순위는 지금의 순위와 같네요. (;;당연한가요..) 하지만 아직 3팀이나 20% 이상이 4위 확률이기 때문에 3팀 다 어느 정도 가능한 수준이라고 볼 수밖에 없을 듯 합니다. 무엇보다 위의 과정상의 허접함으로(...) 오차가 있을 수 밖에 없음을 가정하면 LG가 약 30~40% 정도, 롯데 두산이 약 15~25% 정도로 생각할 수 있을 듯 합니다. 그리고 SK, KIA, 한화는 10% 미만으로 계산되기는 하였지만 아직 희망의 끈을 놓을 때는 아닌 것으로 보입니다. 


5. 결론


2001시즌 이후 최고의 4위 싸움(...이라고 말은 하지만 사실은....)으로 꽤나 재밌는 상황이 연출되고 있습니다. 어떻게 돼든 4위는 포스트시즌의 막차를 타는 것이므로 지금 이 상황에서는 4위 이하의 팀들이 모두 4위를 원할 수 밖에 없는 상황입니다. 각 팀의 팬들 힘내시길 바라며 각 팀은 재밌는 4위 싸움을 해 줬으면 좋겠습니다.


+두산은 제발 후회 없이 좋은 경기 좀 했으면 좋겠습니다....제발..


모든 기록은 한국야구위원회서 참조하였습니다.

Posted by 야구고물상

댓글을 달아 주세요

  1. 삼팬 2015.09.13 17:20  댓글주소  수정/삭제  댓글쓰기

    안녕하세요. 글 잘 보고 있습니다. 근데 푸아송 분포에서 어떤 값을 넣으셨나요? 제가 이와 비슷하게 글을 써보려고 하는데 거기서 막혔네요...

    • 야구고물상 2015.09.13 23:25 신고  댓글주소  수정/삭제

      요새 따로 할 일이 많아서 글을 못 쓰고 있는데도 읽어 주셨다니 감사합니다!!

      푸아송 분포 적용의 경우, 위키피디아에 나오는 식을 중심으로 쓰자면 lambda의 경우 평균적으로 기대되는 승수, 그리고 k의 경우 k번 이길 경우를 생각하고 계산했습니다. 그러니까, 만약에 20경기에서 10승이 평균적으로 기대된다면 lambda에 10을 넣고, 거기에서 15승을 하는 경우의 확률을 계산하고 싶다면 k에 15를 넣는 식으로 말입니다.
      만약 패배를 중심으로 하고 싶으면 위에서 승리를 패배로 바꿔서 계산하면 됩니다.

  2. 2015.11.20 01:05  댓글주소  수정/삭제  댓글쓰기

    비밀댓글입니다

  3. 2015.11.20 01:19  댓글주소  수정/삭제  댓글쓰기

    비밀댓글입니다

  4. 경숙 2016.11.08 11:59  댓글주소  수정/삭제  댓글쓰기

    3번 포아송그래프에서 y축이 무엇인가요?


2013시즌 공포의 출루 듀오.. 안타깝게도 이번 시즌은 둘다 부진하네요,



오랜만에 돌아왔습니다. (3개월 이상 들어오지 않았다고 휴면계정이었다네요.ㅋㅋ) 하하;;근데 하필 돌아오니까 정말 필요 없는 거 하나 만드네요...

 

이 포스팅에서 다룰 것은 제가 만든 APD, Adjusted Plate Discipline으로 조정된 선구안이라는 개념으로 만든 겁니다. (근데 사실 선구안을 보고 싶으면 팬그래프에서 Plate Discipline란을 보는 게 나을 겁니다..)

 

1. 개념

 

말 그대로 Plate Discipline의 조정으로 한국말로 하자면 조정 선구안(...)쯤 되는 개념으로 만들었습니다. 저는 선구안을 주로 보고 싶기 때문에 고의4구를 제외한 4구를 취급할 것입니다. 그리고 사구의 경우 선구안이라기보다는 타석에서의 approach와 관련된 것이라고 생각하여 사구를 제외한 타석에 대하여 LIBB%를 구한 후 이것을 투수 이외의 선수들 평균에 대하여 계산할 것입니다. 이 때 타격이 좋은 선수들은 원래 선구안이 좋은 것도 있겠지만 타격이 좋기 때문에 투수들이 선수들을 피할 것이기 때문에 이에 대하여도 조정을 가할 것입니다.

 

2. 타격 조정

 

타격에 대하여 조정을 가하는 이유는 배리 본즈와 같이 홈런을 칠 수 있는 슈퍼스타들을 상대하는 투수들은 최대한 홈런을 맞지 않기 위해 피하는 방식의 피칭을 하여 많은 고의4, 혹은 그에 준하는 4구를 기록할 것이지만 에디 요스트(통산 0.254/0.394/0.371, 1614볼넷으로 별명이 Walking Man이었음) 같은 타자들은 투수들이 최대한 출루를 시키지 않기 위한 피칭을 할 것이므로 4구가 파워히터에 비해 적을 것이기 때문입니다. 즉 순수한 능력의 선구안 이상의 볼넷 기록을 배리 본즈 같은 유형의 타자들은 얻을 것이고, 그에 비해 에디 요스트 유형의 타자들은 그와는 반대의 상황에 직면할 것이므로 타격에 대하여 조정을 해야 한다는 것이 저의 생각입니다.

 

-약간의 연구(?)

다음과 같은 스탯들에 대하여 LIBB%와의 상관관계를 조사할 것입니다. 이 때 타자마다 선구능력이 다르기 때문에 약한 상관관계를 찾을 것입니다. (r=0.3~0.5,R^2=0.09~0.25) 아래는 제가 조사한 스탯들에 대한 목록입니다. 모든 리그 스탯은 투수들을 제외한 스탯이며, 조사할 때는 AL, NL을 분리하여 계산하였습니다. 샘플은 AL에서 지명타자 제도를 도입한 1973시즌부터 40시즌간의(1973~2012) 정규타석을 채운 선수들에 대하여 모았습니다.

 

LIBB%: (4-고의4)/(타석-고의4-사구)

BA+: 타율/리그 타율

SLG+: 장타율/리그 장타율

ISOP+: 순수장타율/리그 순수장타율

ISOPHR+: 홈런에 대한 경우를 제외한 순수장타율/리그 순수장타율(홈런 제외)

AXBH%+: (순수장타율/장타율)/(리그 순수장타율/리그 장타율)

HR%+: (홈런/타수)/(리그 홈런/리그 타수)

LIBB%+: LIBB%/리그 LIBB%

 

저는 위의 스탯들에서 BA+,SLG+,ISOP+,ISOPHR+,AXBH%+,HR%+에 대해 LIBB%가 가지는 상관관계를 엑셀의 추세선 툴을 통해 알아냈고 그로 인해 ISOP+,HR%+LIBB%에 대해 약한 상관관계를(각각 r^2=0.0927,0.1043) 가짐을 알 수 있었습니다. 하지만 저는 타격조정을 할 때 ISOP+에 대하여는 조정하지 않기로 하였습니다. 왜냐 하면, ISOP의 경우 HR이 같이 계산되는 스탯이며 만약 ISOP에서 HR을 제외하여 LIBB%와의 상관관계를 조사할 경우(ISOPHR+) r^2=0.0004로 사실상 없다는 결론이 나기 때문입니다. 그러니까 사실상 HR의 비율이 LIBB%와의 약한 상관관계를 가지며, 그러므로 HR%에 대하여 4구비율의 조정을 가하기로 하였습니다. 아래는 이와 관련된 엑셀 파일입니다.


APD.xlsx

 

다음에는 각각의 HR%+에 대하여 평균 LIBB%+를 계산하고 그 그래프의 추세선을 통해 타격조정식을 만드는 것을 조사할 것입니다. 이 때 HR%+의 경우 round함수를 이용하여(안 그러면 0.01차이로 끊어서 그래프를 만들기가 제 실력으로는 힘들기 때문입니다..;;) 그에 대응하는 타자들의 LIBB%+의 평균을 계산하고 그걸로 그래프를 그린 후 추세선을 찾아서 타격조정식을 만들 것입니다.

 

그 결과 타자의 ExLIBB%+로 계산하는 것으로 하였습니다.

이 때 앞의 상수를 

으로 한 이유는 HR%+가 1인 경우 ExLIBB%+도 1이 되어야 하기 때문입니다.

 

3. 계산식

 

ExLIBB%+:

APD: LIBB%+/ExLIBB%+

이 때 리그는 AL, NL을 따로 계산하는 것으로 하였습니다. 또한 HR%+를 계산하는 경우 홈런 파크펙터를 사용하여 계산하는 것으로 합니다.

 

4. 적용

 

우선 아주 가볍게 AL, NL 구별하지 않고 계산하여 APD의 분포 그래프를 그려 보았습니다. 예상대로 평균적인 정규분포곡선을 따르는 것으로 보입니다.



 

다음으로 최근 5년간 리그 1위 리스트입니다.


 Season

 AL

NL 

 2009

Chone Figgins 

185 

Nick Johnson 

211 

 2010

Daric Barton 

207 

Jason Heyward 

172 

 2011

Bobby Abreu 

177 

Carlos Pena 

172 

 2012

Carlos Santana 

185 

Dan Uggla 

180 

 2013

Carlos Santana 

170 

Joey Votto 

209 

 

참고로 2013시즌 추신수는 204를 기록하였습니다. (리그 2위) 작년 추신수, 보토가 정말 엄청나게 볼을 골랐음을 이 허접한 스탯으로도 알 수 있습니다.


다음은 2014시즌 기록 엑셀 파일입니다. 스탯은 한국시간으로 2014826일 기준입니다.

 

2014 APD.xlsx


다음은 몇몇의 전·현역 선수들의 기록입니다. 참고로 조 모건/마이크 슈미트/리키 헨더슨/배리 본즈/블라디미르 게레로/스즈키 이치로/알버트 푸홀스/추신수/조이 보토에 대하여 계산하였습니다. (사실 에디 요스트, 베이브 루스, 테드 윌리엄스에 대해서도 계산해보고 싶었습니다만 각각 IBB가 기록되지 않는 시즌이 있었기 때문에 계산을 하지 않았습니다.) 계산 결과 각각 통산 197/135/195/145/60/57/95/145/155로 계산되었습니다. 현역 선수의 경우 위와 같은 시간 기준가지 스탯을 계산하였습니다. (참고로 홈런 파크펙터는 팬그래프에서 1974시즌부터 참고되므로 조 모건과 마이크 슈미트의 초기 스탯의 경우 휴스턴의 홈런 파크펙터는 85, 필라델피아는 105로 고정하여 계산하였습니다.) 예상 외로 푸홀스가 100이 안 되었으며 추신수와 배리 본즈가 비슷한 수준의 선구안을 가진 것으로 계산되는 군요;; 그리고 조 모건과 리키 헨더슨은 정말 엄청난 수준의 선구능력을 보여준 것으로 계산되네요.


Batters.xlsx

 

다음으로 KBO에 적용할 경우입니다. 파크펙터는 적용하지 않았습니다. 각각 시즌 출루율 1위 선수들과 이외 제가 관심이 가던 선수들을 위주로 계산하였습니다. 물론 MLB 기준으로 만든 툴로 KBO에 정확히 똑같이 적용하기는 힘들기는 하지만 한 번 해 볼만하다고 생각했기에 적용해 보았습니다. 그리고 2006시즌 100볼넷을 넘긴 양준혁은 대단하군요..(195)

 

KBO 타자들(2004~2013).xlsx


위의 계산들을 보면 정규타석을 기록한 선수들 중 약 120정도의 APD를 기록하는 경우 수준급의 선구안을 가진 것으로 생각할 수 있다고 생각할 수 있겠고(대략적으로 한 팀당 1~1.5명 정도 수준입니다.), 160 이상이면 대략적으로 시즌 1위급 정도로 생각됩니다.

 

5. 끝마치며


이상으로 이 허접한 선구 능력 스탯 글을 끝마치도록 하겠습니다. 한 가지 아쉬운 점은 위의 파일에서 확인할 수 있듯이 푸홀스나 배리 본즈 같은 경우를 보면 이 툴이 강타자들에 한해서는 APD가 실제보다 낮게 측정될 가능성도 있다고 생각된다는 점입니다. 다만 제 생각에는 exponential 식을 쓰는 게 맞다고 생각되므로(...) 저의 직관이 틀렸을 수도 있다는 생각이 듭니다.

 

 

 

MLB 스탯은 Fangraphs를 참고하였고 KBO 스탯은 Baseball-Reference한국야구위원회에서 참고하였습니다.

Posted by 야구고물상

댓글을 달아 주세요

  1. 토아일당 2015.03.18 20:40 신고  댓글주소  수정/삭제  댓글쓰기

    블로그에 재미있는 글이 많네요. 감탄했습니다.
    이런 생각은 한번도 못해봤는데요. 볼넷의 갯수로는, 장타자들에 대한 상대 투수의 도망가는 피칭으로 인한 영향이 뒤섞여서, 볼넷의 갯수 또는 타율과 출루율의 갭. 같은 걸로는, 선구안(=공을 골라서 출루하는 능력 또는 성향)을 측정할 수 없다고만 생각했는데,,, 이런 방법이 있었네요.

    그런데, LIBB%를 구할때,(4구-고의4구)/(타석-고의4구-사구) 가 아니라
    타격하지 않은 타석에서의 볼넷출루 SIBB = (4구-고의사구) / (타석 - 안타 - 볼넷 - HBP - 고의사구) 로 하는게 더 낫진 않을까요?

    선구안이라는 개념이 좀더 어울리려면, 가운데 들어오는 공을 친 경우 거꾸로 LIBB%가 낮아지는 부분이 약간 안어울린다는 느낌입니다.

    직관적으로는, 투수의 고의적이지 않은 고의사구 (거포들에 대한 피칭전략때문에 생기는 볼넷)에 가장 크게 영향을 주는 요인은, 홈런의 갯수보다는, 약간 조정된 SLG+ 일거 같은데요.

    ISOP의 경우는 타율이 낮은 선풍기형 타자들이 노이즈를 만들것 같고,
    SLG의 경우는 고타율의 똑딱이들이 노이즈를 만들테니,
    회귀식을, SIBB에 대한 (BA+ 곱하기 ISOP+) 로 할 경우 혹시 높은 R^2 를 얻을 수도 있지 않을까 하는 생각도 해봤습니다. 필요하다면 BA+ * ISOP+ 중에서 ISOP 쪽에 좀더 가중치를 주거나 아니면 승수를 주거나 라든가의 조작을 포함해서요.

    글에 쓰신 exLIBB% 라는게 굉장히 재미있는 아이디어인데, HR%에 대한 R^2가 좀 낮은거 같아 아쉽습니다.

    • 야구고물상 2015.03.18 21:12 신고  댓글주소  수정/삭제

      와, 그게 훨씬 더 맞는 방법이겠네요. 사실 이건 만들어 놓고 나중에 '아 이건 좀 아닌 것 같다' 하고 버려논 자식 같은 스탯이라서요..사실 진짜 선구안을 알려고 한다면 관련 스탯들을 다 요모조모 따져 보는 게 훨씬 좋다는 생각입니다. 근데 그렇게 하기에는 직관적으로 받아들이기 힘들 때도 있으니까, 하나로 통합하자면 조금 더 직관적으로 생각이 가능하지 않을까 하는 생각에서 출발한 거라서요.

      그리고 상관관계와 같은 경우에는, 사실 이 스탯이 낮은 건 맞는데 낮을 수밖에 없다고 생각한 게 선구안이란 것도 차이가 있으니까 r=0.3만 넘게 된다면(r^2=0.09) 괜찮을 거라는 생각을 한 겁니다. 사회과학을 하는 분들은 r=0.3을 기준으로 한다는 얘기를 들은 적이 있어어요.