드디어, 오랫동안 마음속에 무거운 짐(?)으로 남아 있던 구원투수의 WAR 계산에 대해 포스팅을 하게 되었다.

구원투수의 WAR 계산은 기본적으로 선발투수의 WAR 계산과 동일한 방법으로 수행한다. (선발투수의 WAR 계산은 이 글을 참고) 하지만, 불펜 특유의 독특한 운용 방식으로 인해, 계산시에 추가적으로 고려해야 할 사항이 생긴다. 예를 들어, 똑같이 ERA 3.0을 기록한 두 릴리버가 있는데, 투수 A는 클로저로 위기 상황에 주로 등판하였고 투수 B는 주로 패전처리용으로 기용되었다면, 비슷하게 실점을 허용했다고 해도 두 투수가 팀 승리에 기여한 바는 전혀 다른 것이다.


1. LI를 고려해야 하는 이유

우리는 앞의 글에서 LI(Leverage Index)에 대해 살펴보았다. 선발투수는 본인이 직접 게임을 시작하며, 게임이 흘러감에 따라 LI가 늘어나기도 하고 줄어들기도 한다. 일반적으로 선발투수들의 평균 LI는 1이다. 또한, 안타와 볼넷, 사사구를 연속으로 허용하여 주자 만루를 만들어서 LI가 올라갔다면, 그것은 전적으로 본인의 책임이므로, 본인이 위기를 자초한 뒤에 스스로 해결했다고 해서 특별히 그것을 칭찬할 이유도 없다.

하지만, 구원투수는 사정이 다르다. 감독이 어떤 투수를 LI 2.0 인 상황에서 마운드에 올렸다면, 이 투수가 잡아내는 아웃이나 이 투수가 허용하는 실점의 가치는 평균적인 상황의 2배에 달하는 것이다. 이러한 위기 상황을 무실점으로 잘 막아냈다면, 이 무실점 역투의 가치 역시 평균적인 상황의 2배이다. 구원투수는 본인의 의지나 희망과 상관없이 타의에 의해 특정 상황에 투입되어 역할을 수행하므로, 역할의 경중에 따라 가치를 조정 평가해 주는 것이 타당할 것이다.

여기에서 각각의 상황이 갖는 중요도는 LI로 평가할 수 있다. 예를 들어 메이저리그 클로저들의 평균 gmLI는 1.8 정도이므로, 이들은 평균적인 상황보다 1.8배 중요한 상황에 보통 등판한다는 의미가 된다.

그러면, 클로저들의 WAR을 선발투수와 같은 방식으로 구한 뒤에, 1.8배 해 주면 되는 것이 아닐까? 아쉽게도 현실은 그렇게 단순하지가 않다.


아래의 내용은 글만 읽어서는 이해하기가 쉽지 않을 수도 있다. 진지하게 접근하고자 하시는 분들은 첨부된 엑셀파일의 계산을 꼭 참고하시기 바란다. 또한, 나중에 다시 언급하겠지만, 2009년 MLB 클로저들에 대한 WAR 계산 결과도 포함되어 있다.




2. Bullpen Chaining Model

MLB 팀들은 보통 12인 투수진(선발 5명 + 구원 7명)을 운용한다. 예를 통해서 불펜이 어떻게 운용되는지를 살펴보자. 이 예는 Sky Kalkman의 글에서 퍼온 것이다. 참고로, Kalkman의 예는 Tom Tango의 오리지널 모델을 다듬은 것이다.

CASE 1

여기에 어떤 팀의 7명짜리 불펜이 있다. 감독은 이 7명에게 각각의 역할을 부여하고 있으며, 평균적으로 아래와 같은 상황에서 각각의 투수를 기용한다고 하자. 한 시즌 동안, 이 7명의 투수들은 각각 72이닝씩을 던졌다고 치자. 투수의 실점 방어 수준은 편의상 ERA를 사용한다.

ERA  LI
3.00  1.8  (CL)
3.75  1.3  (Setup #1)
4.00  1.0  (Setup #2)
4.25  0.9  (Middleman #1)
4.50  0.8  (Middleman #2)
4.70  0.7  (Middleman #3)
4.80  0.6  (Mop-up)

이들의 평균 LI는 1이고, 평균 ERA는 4.14이다. 이들이 72 x 7 = 504 이닝을 던지는 동안 내준 자책점(ER)은 총 232점이다. 그러나, 등판 상황의 중요도에 따라 실점의 가치가 달라지므로, 각 투수의 ERA에 LI를 곱해서 leveraged ERA를 구할 수 있을 것이다. 예를 들어 클로저의 3.00 ERA를 leveraged ERA로 바꾸면 1.8 x 3.00 = 5.40 이 된다. 이러한 방식으로 leveraged ERA를 구하고, 이를 바탕으로 leveraged ER을 구해 보면, 504 이닝동안 총 223점을 내준 것이 된다.


CASE 2

이번에는 위의 팀에서 클로저가 시즌 개막 직전에 교통사고로 시즌아웃 되었다고 가정하자. 이미 시즌 개막이 임박하여 FA시장에 좋은 릴리버는 남아있지 않고, 다른 구단들과의 트레이드도 잘 되지 않아서, 이 팀은 결국 AAA에서 Replacement Level 릴리버를 로스터에 포함시키게 된다. 그런데 여기서, Replacement Level 릴리버를 클로저로 대신 기용하는 팀은 어디에도 없을 것이다. 바로 이 부분이 문제가 된다.

대부분의 감독은 이런 경우에 ERA 3.75의 셋업맨 #1을 클로저로 돌리고, 나머지 릴리버들의 역할을 하나씩 올린 다음, 방금 AAA에서 올라온 신참 릴리버에게 Mop-up 역할을 맡길 것이다. 이 리그의 Replacement Level Reliever의 ERA가 4.85라고 하면, 이 팀의 새로 구성된 불펜은 아래와 같다.


ERA  LI
3.75  1.8 (CL)
4.00  1.3 (Setup #1)
4.25  1.0 (Setup #2)
4.50  0.9 (Middleman #1)
4.70  0.8 (Middleman #2)
4.80  0.7 (Middleman #3)
4.85  0.6 (Mop-up)  <-- AAA에서 올라온 신참

상황이 이해가 되시는지?

이 7명이 똑같이 72이닝씩 던졌다고 하고, 위에서와 같이 leveraged ERA 및 leveraged ER을 구해보면, 504 이닝 동안 이들이 내준 레버리지 자책점(leveraged ER)은 242.2점이 된다. 이제 ERA 3.00의 클로저가 전력에서 이탈하고 대신 Replacement Level 릴리버를 한 명 넣게 됨으로써 이 팀이 추가로 얼마나 실점하게 되는지 알 수 있다.

242.2 - 223.0 = 19.3   (반올림으로 인해 0.1점의 오차 발생)

이 팀은 19점을 더 실점하게 되었다. 즉, 이 팀의 불펜에 있어서 ERA 3.00의 클로저가 Replacement Level 투수에 비해 팀 실점을 막는데 기여하는 수준(RAR: Runs Above Replacement Level)은 19.3점이며, 대략 10점=1승이라고 치면 이 클로저의 WAR은 1.9 정도가 된다.

이렇게, 불펜에서 한 명이 빠질 경우 체인으로 연결된 것처럼 역할이 차례차례 변경된다는 의미에서, 위와 같은 불펜 설명 모델을 Bullpen Chaining 이라고 한다.


CASE 3

만약 이러한 체인 효과를 무시하고 계산하면 결과가 어떻게 달라지는지 살펴보자.

위의 예에서, 클로저가 시즌아웃된 뒤에, 감독이 다른 투수들의 역할은 그대로 둔 채 방금 AAA에서 올라온 신참 구원투수를 클로저로 기용하는 만용을 부렸다고 가정하자. 불펜 구성은 아래와 같이 바뀐다.

4.85  1.8  (CL) <-- AAA에서 올라온 신참
3.75  1.3  (Setup #1)
4.00  1.0  (Setup #2)
4.25  0.9  (Middleman #1)
4.50  0.8  (Middleman #2)
4.70  0.7  (Middleman #3)
4.80  0.6  (Mop-up)

이 7명이 똑같이 72이닝씩 던졌다고 하면, 504이닝에서 이 불펜의 leveraged ER 총합은 249.6점으로 나타난다. 이렇게 되면 CASE 1과 비교할 때, 클로저의 RAR이 26.6점이 되어 클로저의 WAR는 2.7로 계산된다.

CASE 2와 CASE 3 중에 어느 쪽이 현실에 가까운지는 명약관화하다고 본다. ERA 4.85의 Replacement Level 구원투수를 클로저로 기용하는 팀은 없을 것이므로, CASE 2와 같이 생각함이 더 타당하다. CASE 3의 계산법은 0.7~0.8 WAR 정도 클로저를 과대평가하게 되는 것이다.


3. WAR 계산시 LI의 조정 적용

클로저의 LI가 1.8이라고 해서, 1.8의 LI를 그대로 곱해 주면, 해당 선수가 맡았던 역할을 그대로 Replacement Level 선수에게 맡기는 모습이 되어 위의 CASE 3과 같은 결과가 되어 버린다. 불펜 운용을 이렇게 하는 팀은 별로 없으므로, 체인 효과를 고려하여 LI를 조정해 주어야 할 것이다.

구원투수의 WAR 계산을 위해 현재 Tom Tango나 Fangraphs 사이트가 사용하고 있는 조정 LI는 아래와 같다.

Effective LI = (1 + gmLI) / 2

(gmLI : 구원투수가 경기에 투입되는 순간의 LI)

이 식을 위의 Chaining Model 예에 적용해서 클로저의 WAR를 다시 구해보자.

클로저의 ERA는 3.00이었고, Replacement Level 구원투수의 ERA는 4.85였다.
클로저의 LI는 1.8이었으므로, Effective LI는 (1+1.8) / 2 = 1.4 이다.
이 클로저가 Replacement Level 투수에 비해 덜 실점하는 점수는 (4.85 - 3.00) * 72 / 9 = 14.8 이다.
클로저라는 역할 및 체인 효과를 감안해주기 위해 Effective LI를 곱해 주면,

14.8 * 1.4 = 20.7

이것이 클로저의 RAR이다.
따라서, WAR은 20.7 / 10 = 2.1이 된다.

앞의 예에서 직접 체인 효과를 돌려 보아서 얻은 클로저의 WAR은 1.9였다. 0.2의 오차가 생기고 있는데, 이는 체인 모델이 모든 투수가 72이닝씩 똑같이 던진다는 다소 비현실적 가정을 하고 있다는 점에 주로 기인하는 것이다. 하지만, 각 팀마다 동료 불펜투수들의 구성은 조금씩 다르고, 이에따라 체인 효과도 조금씩 다르게 나타나므로, 위와 같은 Effective LI 공식이 100% 맞는다고 볼 수도 없다. 이 클로저의 진정한 WAR은 아마도 1.9와 2.1 사이의 어딘가에 위치하고 있을 것이다. 아마도 2.1에 가까운 쪽이 되겠지만 말이다. 위에서 언급한 Sky Kalkman의 글에도 나와 있지만, Effective LI의 공식은 아직 조금 더 정교해질 수 있는 여지가 있으며, 그러한 연구도 계속 진행되고 있다.


4. 2009년 MLB 구원투수들의 WAR 계산

계산 방법은 기본적으로 선발투수 WAR 계산과 동일하지만, 두 가지를 고려해 주어야 한다.
1) Replacement Level 구원투수의 기대 승률은 .470 이다. (선발투수는 .380이었다.)
2) 구원투수의 역할에 따른 중요도를 Effective LI를 통해 감안해 준다.

또한, 선발투수 때 ERA/RA 비율을 그냥 0.92로 계산했던 것과는 달리, 실제 2009 시즌의 리그 총 ERA와 리그 총 RA로부터 비율을 계산하여 약간이나마 정확도를 높이려고 노력하였다.

위에서 보여 드린 첨부파일에는 Bullpen Chaining 모델 뿐 아니라 2009 시즌 메이저리그 클로저들의 WAR 계산 결과도 들어 있으므로, 받아서 확인해 보시기 바란다. 특히 누가 과대평가되고 있는지, 한 눈에 확인할 수 있을 것이다.


Today's Music : Chage & Aska - On Your Mark

Official MV (지브리 애니메이션)


Live


말이 필요 없는 명곡. 뮤직비디오도 너무 좋다.
Posted by FreeRedbird
:

이 글은 "한국야구팬사이트"에서 승짱님의 한국 프로야구 투수 랭킹 계산을 돕기 위한 예로서 작성된 것이다.
단지 "예"일 뿐이므로 스탯에 대한 해석, 계산 방법에 대한 입장의 차이에 따라 얼마든지 변형과 조정이 가능하다.

계산 방법은 기본적으로 이전 포스팅에서 소개해 드린 것과 동일하다.

다만, FIP를 RA scale로 바꿔줄 때 0.92를 사용하는 대신 실제 KBO의 ERA와 RA 비율을 계산하여 사용하였다. 결과는 아래 첨부파일에서 볼 수 있듯이 0.91~0.92로 대동소이하게 나온다.

또한, FIP Constant 역시 KBO의 실제 데이터를 가지고 계산하였다. 2007년 시즌은 FIP Constant가 2.84에 불과한 충격적인 결과가 나왔으나, 2008년과 2009년은 그럭저럭 MLB와 유사한 숫자가 나왔다.

2009년과 2008년 KBO 시즌에서 각각 5명의 선발투수를 골라서 직접 계산을 해 보았다.

5명의 선발투수는 완전히 임의로 고른 것이다. (나는 KBO에 좋아하는 팀이 없으며, 8개 구단에 대해 완전히 중립이다...)


이 계산에는 다음과 같은, 근거가 부족한 가정들이 들어가 있다. 이런 부분들을 말끔하게 해결할 수 없는 것은 KBO의 데이터 부족, 개인적인 지식 부족, 그리고 개인적인 시간 부족에 기인한 것이다.

1. KBO에서 각 이벤트는 MLB와 비슷한 Run Value를 가지며, 따라서 FIP 계산식은 동일하다.

2. KBO에서 Run Scoring Environment는 MLB와 유사하여, Runs per Win을 MLB와 동일하게 [((상대 팀 이닝*상대 팀 실점수준)+(소속 팀 이닝*소속 팀 실점수준)/(상대 팀 이닝+소속 팀 이닝))+2] * 1.5 의 근사식으로 산출할 수 있다.

3. KBO에서 선발투수의 Replacement Level은 MLB와 동일하며, 따라서 Replacement Level 선발투수의 기대 승률은 .380이다.
--> 단, KBO의 Replacement Level이 실제로는 이와 다르다고 해도, 상대적 비교에는 지장이 없다. 이 계산에서 투수 A가 투수 B보다 WAR이 높게 나타났다면, Replacement Level을 바꾸더라도 A가 B보다 높게 나타나는 것은 변함이 없다. 단지 절대값이 바뀔 뿐이다.


다음은 중요한 참고 사항이다.

1. KBO 선수들의 모든 데이터는 스탯티즈에서 가져왔다. 스탯티즈는 보면 볼수록 놀랍고 대단한 사이트이다. (우리나라의 척박한 야구 기록 환경을 생각하면 더더욱 그렇다.) 단, FIP는 스탯티즈의 데이터를 쓰지 않고 직접 계산하였다. 이유는, 스탯티즈의 FIP가 Constant를 3.20으로 항상 동일하게 사용하고 있고, BB와 IBB의 구분이 이루어지고 있지 않기 때문이다.

2. 여기에서 계산한 선발투수의 WAR는 선발로 등판한 기록만을 대상으로 한 것이다. 한국 프로야구는 투수의 역할이 모호한 경우가 많아 시즌 내내 100% 선발 투수로만 등판하는 투수는 그다지 많지 않으며, 대부분의 선발투수가 구원 등판 기록을 가지고 있다. 따라서, 정확한 계산을 위해서는 해당 투수가 구원으로 등판한 기록을 가지고 구원투수의 WAR를 계산하여 합산해 주어야 할 것이다. (결국 내가 구원투수 WAR를 구하는 방법을 최대한 빨리 포스팅해야 할 것 같다... -_- )


다음은 이 계산을 하고 난 뒤의 소감.

1. 07, 08, 09년 3년간의 FIP Constant를 계산하면서 시즌 스탯을 확인한 결과 시즌과 시즌 사이의 득점 수준 변화가 매우 크게 나타났다. (3년 사이에 타고투저 현상이 심화됨) 팀 수도 적고 게임 수도 적다보니 샘플이 적어져서 데이터의 변동성이 MLB에 비해 훨씬 크게 나타나는 것 같다. (KBO 1시즌 = 1,056게임, MLB 1시즌 = 4,860게임)

2. 그럼에도 불구하고 ERA/RA 비율이 유사하게 나타나는 것을 보면 비슷한 규칙을 가지고 비슷하게 야구를 하니 비슷한 결과가 나온다는 느낌이어서... MLB의 메트릭을 KBO에 적용하는 것이 완전히 엉뚱한 결과를 도출하지는 않을 것이라는 생각이 든다.

3. 류현진은 정말 좋은 투수인 것 같다. 다른 선수들을 많이 계산해 본 적은 없으나 한국야구에서 5 WAR면 엄청나게 높은 수치일 것 같은데... 위의 계산 파일에는 들어있지 않으나, 08년 스탯으로 계산해도 윤석민과 동일하게 3.6 WAR로 나온다.

Posted by FreeRedbird
:

(주: 타자의 WAR를 구하는 글은 이미 이전에 포스팅한 바 있었으나, 일부 잘못된 계산을 바로잡고 내용을 보충하여 다시 포스팅 하기로 하였다. 또한, 이제 2009 시즌이 끝났으므로 계산에서 사용한 예도 2009년의 스탯들로 바꾸었다.)



Chase Utley : 항상 실력에 비해 충분한 인정을 받지 못하고 있는, 심각하게 저평가된 플레이어이다.


타자가 팀의 득점에 기여하는 방법은 크게 보아 공격(타격), 수비, 주루가 있을 것이다. 그래서 좋은 타자를 이야기할 때 "공, 수, 주 3박자를 두루 갖췄다"는 표현을 사용하기도 한다.

각각의 타자에 대해서 이러한 득점 기여의 정도가 어느 정도인지를 측정하기 위해, 이전의 글들을 통해 공격, 수비, 주루의 측면을 차례로 검토해 왔다. 또한 비교 대상으로서 절대적 기준이 되는 Replacement Level 및 수비 포지션에 따른 조정 수준에 대해서도 살펴본 바 있다. 각각의 항목에 대해 다시 한번씩 훑어 보시면 이해에 도움이 되시리라고 생각하여 링크를 걸어 본다.

1. 타격 기여 수준 : wOBA 및 wRAA
2. 비교의 절대적 기준 : Replacement Level
3. 수비 기여 수준 : UZR, TZ
4. 포지션별 차이 : Positional Adjustment
5. 주루 기여 수준 : 도루 성공/실패, EqBRR

이를 종합하면 특정 타자의 전체 기여 수준, 혹은 그의 가치(Value)를 계산할 수 있는데, 이것이 바로 RAR(Runs Above Replacement level) 및 WAR(Wins Above Replacement level) 이다.

여기에서는 우선 Fangraphs와 동일한 방식으로 WAR를 구해 볼 것이다. 원문에서는 여기까지만 시도했었지만, 이 글에서는 Fangraphs 방식의 한계와 그 보완 방법까지 생각해 보고자 한다.

먼저 RAR을 구해 보면... 위의 다섯 가지를 차례로 더해 주면 된다.

RAR = Batting + Replacement Level + Defense + Positional Adjusment + Running

이제 RAR을 WAR로 환산해야 하는데... 원칙적으로는 팀 전체 득점과 실점에 대해 해당 플레이이어의 RAR이 미치는 점수 변화 정도를 가지고 Pythagorean Expectation의 식에 넣어서 계산하는 것이 맞지만... Pythagorean 관련 포스팅에서 언급한 바와 같이, "10점 득점 = 1승"의 단순한 계산 방법이 의외로 높은 정확도를 가지므로, 계산의 편의를 위해 이를 활용하는 것이 좋을 것이다. 즉, 아래와 같이 쉽게 계산할 수 있다.

WAR = RAR/10

이제부터 실제 예를 통해서 자세히 살펴보자.
계산에 필요한 Raw Data는 Baseball-ReferenceFangraphs에서 얻었으며, 이후의 모든 계산은 직접 하였다. 계산에 사용한 엑셀 sheet를 첨부하였으므로, 계산 결과를 쉽게 확인하실 수 있을 것이다.



아래는 Chase Utley의 2009년 성적이다.

공격 : 687 PA, 98 1B, 28 2B, 4 3B, 31 HR, 85 NIBB, 3 IBB, 24 HBP, 4 RBOE
수비 : 10.8 UZR
주루 : 23 SB, 0 CS


(NIBB : 고의사구가 아닌 볼넷, IBB : 고의사구, RBOE : 에러로 인해 타자가 출루한 경우)

순서에 따라 차례차례 계산해 보면...


1-1. Park Adjust

먼저 wOBA를 계산하기에 앞서서, 구장으로 인한 효과를 보정해 주는 것이 계산의 신뢰도를 높이는 데 도움이 될 것이다. Park Factor를 계산하는 방법은 여러 가지가 있고, 개인적으로는 어떤 방법이 가장 좋은지 아직 결론을 내리지 못하고 있다. 일단 여기서는 Fantasy411의 2006-08년 Park Factor를 빌려와서 사용하도록 하겠다. 이 자료는 엑셀 파일에 포함되어 있다. (단, RBOE의 Park Factor는 어디에서도 얻을 수가 없었다. 어차피 Utley의 RBOE가 4에 불과하여 Park Factor가 있더라도 그다지 영향은 없었겠지만...)

정밀한 조정을 위해서는 Utley의 경기별 홈구장을 일일이 찾아서 계산해야겠지만... 너무 품이 많이 들므로, 다음과 같은 간단한 방법을 사용하였다. 1) 타석의 절반은 홈, 절반은 원정에서 기록한 것으로 본다. 2) 원정구장들의 평균 Park Factor는 100이다. (실제로는 홈구장을 뺀 15개 NL 구장의 평균이므로 100에 근접한 값일 것이나, 큰 오차는 없으리라고 본다) 3) 따라서, 조정된 Park Factor는 (100 + 홈구장 Park Factor) / 2 로 계산할 수 있다.

계산시 1B, 2B, 3B, HR에 대해 Park Factor를 적용하였으나, 볼넷이나 HBP, 도루 등의 경우는 구장별 차이가 있다고 인정하기가 어려운 관계로 반영하지 않았다. 이런 부분에도 구장으로 인한 차이가 존재한다고 생각한다면... 취향에 따라 해당 스탯의 Park Factor를 찾아서 추가적으로 적용해 주면 된다. 또한, 1루타에 대한 Park Factor가 따로 없으므로... 안타 총 합계(H)의 Park Factor와 장타(XBH)의 Park Factor, 그리고 실제 2009년 메이저리그 안타, 장타 기록으로부터 1루타의 Park Factor를 유추하였다.

이렇게 조정한 Utley의 09년 성적은 아래와 같다.
687 PA, 97 1B, 28 2B, 5 3B, 28 HR, 85 NIBB, 3 IBB, 24 HBP, 4 RBOE

역시 홈런이 많은 홈구장을 쓰다 보니, 조정 결과 홈런이 약간 줄어든 것을 확인할 수 있다.


1-2. wOBA 및 wRAA 계산

wOBA 및 wRAA의 계산식 및 이론적 근거는 위의 링크를 참고하시고... Park Factor를 적용한 기록을 가지고 Utley의 wOBA를 계산한 결과는 다음과 같다. (엑셀 sheet 참조)

(Park Adjusted) wOBA = 0.390

한편, 2008년 NL 전체 타격 기록을 가지고 구한 리그 평균 wOBA는 0.328이므로, 이를 이용하여 Utley의 wRAA를 구하면 다음과 같다. (엑셀 sheet 참조)

wRAA = 37.45 Runs

즉, 2009년 시즌의 Chase Utley는 NL 평균 타자에 비해 타격으로 팀 득점에 37.45점 더 기여했다는 의미가 된다.


2. wRAA를 Batting RAR로 : Replacement Level의 설정

wRAA는 Runs Above Average라는 단어의 의미에서도 알 수 있듯이 리그 평균과 비교하는 스탯이므로, 이를 Replacement Level과의 비교로 조정하여 RAR(Runs Above Replacement leve)로 만들 필요가 있다. 이전부터 한 시즌을 기준으로 리그 평균 수준의 주전 선수와 Replacement Level의 땜빵 선수 차이에는 20점 혹은 2승 정도의 차이가 난다는 경험적 분석 결과들이 있었는데, 작년 말에 THT에 게재된 Sean Smith의 뛰어난 연구는 이를 다시 한 번 확인시켜 주었다. 즉, 600 PA를 기준으로 리그 평균과 Replacement Level의 사이에는 20점(20 Runs)의 기여 수준 격차가 있다는 것이다. 이러한 격차를 wRAA 값에 더해주면, RAR로 쉽게 환산된다.

Utley의 경우로 돌아가면, Utley는 687 PA를 기록했으므로, 687 PA에서 평균과 Replacement Level의 격차를 계산해 보면...

600/20 x 687 = 22.90 Runs

이 값이 Utley의 Replacenemt Level 값이 된다. 즉, Utley 대신 Replacement Level 선수를 시즌 내내 기용했다면, 아마도 22.9점 만큼 덜 득점했을 것이라는 이야기이다.


3. 수비 기여 수준 : UZR

이전 포스팅에서 ZR을 개선한 합리적인 스탯으로 UZR, TZ(TZR), +/-를 소개한 바 있다. 그 포스팅에서 언급한 바와 같이, +/-는 유료 정보이며 연말에 발표되고, TZ의 경우 현역 메이저리거들에 대한 데이터는 아직 작업중인 상태여서 조회가 되지 않으므로, 현재로서는 UZR이 거의 유일한 선택이라고 할 수 있다. UZR은 Fangraphs에 거의 실시간으로 계속 업데이트 되므로, 지난 시즌의 결과물 뿐 아니라 현재 진행중인 시즌에 대해서도 누구가 쉽고 빠르게 정보를 얻을 수 있다. 뿐만 아니라, TZ의 창시자인 Sean Smith조차 UZR이 가장 뛰어난 수비 스탯이라고 인정하고 있으므로, UZR을 쓰는 것이 여러 모로 좋은 선택이라고 생각한다.


Utley는 2009년 1년 내내 2루수로만 출장했으며, 1년간의 누적 UZR 값은 10.8이다.

UZR = 10.8 Runs

이는 Utley가 2008년 시즌에 수비를 통해 실점을 평균 2루수보다 10.8점 더 방지하는 정도의 기여를 했음을 의미한다.


4. Positional Adjustment

다시 한 번 포지션별 조정 점수를 정리해 보면 아래와 같다.

포수 : +12.5 Runs
유격수 : +7.5 Runs
중견수, 2루수, 3루수 : +2.5 Runs
좌익수, 우익수 : -7.5 Runs
1루수 : -12.5 Runs
지명타자 : -17.5 Runs


이 조정 점수는 162게임의 풀 시즌을 기준으로 만들어진 것임에 유의해야 한다. 162게임을 이닝으로 환산하면 1,458 이닝이 되므로, 실제 수비에 참가한 이닝을 1458로 나눠서 위의 조정 점수를 곱해 주면 실제 해당 시즌의 조정 점수가 될 것이다.

Utley는 2008년에 2루에서 1357 이닝을 뛰었다. 따라서...

(2.5 x 1357) / 1458 = 2.33 Runs

이 점수가 Utley의 수비 포지션에 따른 최종 조정 점수가 된다.


5. 주루플레이의 기여 수준: 도루 성공과 실패

Fangraphs는 주루플레이에 대해 도루 성공/실패만을 반영하고 있는데, 이는 Fangraphs가 다른 주루 능력에 관심이 없어서라기보다는 무료로 이용 가능한 공개 주루 스탯이 존재하지 않기 때문일 것이다. 주루 스탯을 제공하는 곳이 BP와 Bill James Online 정도밖에 없는데, 둘 다 Fangraphs에 자료를 그냥 링크해 줄 생각은 없는 듯하다.

Fangraphs의 선수 페이지에서 맨 아래에 있는 Value를 보면, Running 항목이 따로 존재하지 않고 도루 성공/실패를 Batting에 합산하고 있다. 평균적으로 도루 성공은 0.175, 도루 실패는 -0.467점의 가치(Run Value)를 지니므로, 도루 및 도루 실패의 갯수에 Run Value를 곱해서 계산하는 것이다.

Utley는 2009년에 23 SB, 0 CS를 기록하였으므로...

23 x 0.175 - 0 x 0.467 = 4.03 Runs

도루를 통해 4.03점 만큼 팀 득점에 기여하였다는 결론을 얻을 수 있다.


6. RAR 및 WAR의 산출

이제 모든 구성 요소의 계산을 다 했으므로, 지금까지 나온 값을 모두 더하면 타자의 총 기여 수준, 혹은 그의 가치(Value)가 된다.

RAR = 37.45(타격) + 22.9(Replacement Level) + 10.8(수비) + 2.33(포지션 조정) + 4.03(도루)
      = 77.50


득점 10점은 1승과 동일하므로,

WAR = RAR/10 = 7.8

즉, 거칠게 표현하자면, 2009년 Chase Utley는 7.8승짜리 플레이어였다는 것이다.

2009년 Phillies는 93승 69패를 기록하였는데, 만약 Utley 대신 1년 내내 Miguel Cairo와 같은 Replacement Level 플레이어들로 2루를 돌려막기 했다면, Phillies는 아마도 85승 77패를 기록했을 것이라는 이야기이다. 이렇게 되면 Florida Marlins와 동률이 되므로, 플레이오프 진출을 장담할 수 없게 되어 버린다. 이것이 바로 진정한 스타 플레이어 한 명의 위력이다.

Fangraphs의 Utley 페이지를 보면, 2009년 그의 WAR를 7.6로 계산하고 있다. Fangraphs의 WAR 계산 로직은 이 글에서 내가 설명해 온 바와 동일하다. 0.2의 오차는 타격 기여도 계산에서 생겨난 것인데, 내가 타격에 37.45, 도루에 4.03으로 총 41.48점으로 계산한 데 비해 Fangraphs는 둘을 합쳐 39.4로 계산하고 있다. 오차의 원인으로 생각되는 것은 사용한 Park Factor 데이터의 차이 및 Park Factor 적용 방법의 차이가 가장 유력하다. 또한, 소숫점 반올림으로 인한 약간의 오차도 발생할 수 있다.


이번에는 Joe Mauer의 2009년 성적을 이용해서 WAR를 계산하여 보자.
(역시 첨부한 엑셀 sheet에 계산한 결과물이 들어 있다.)

다음은 Mauer의 2009년 타격 Raw Stat이다.
606 PA, 131 1B, 30 2B, 1 3B, 28 HR, 14 IBB, 62 NIBB, 2 HBP, 3 RBOE

Twins의 홈인 Metrodome의 Park Factor를 고려하여 위의 스탯을 조정해 주면 아래와 같다.
606 PA, 132 1B, 30 2B, 1 3B, 30 HR, 14 IBB, 62 NIBB, 2 HBP, 3 RBOE

이 기록으로부터 wOBA 및 wRAA를 계산하면,
wOBA = 0.449
wRAA = 57.50

Replacement Level = 20 / 600 * 608 = 20.2

수비 : UZR = 0 (포수는 UZR데이터가 없다.)

포지션 조정 : Mauer는 포수로 939 이닝을 뛰었으며, 지명타자로 28게임에 출장하였다. 따라서...
12.5 x 939 / 1458 - 17.5 x 28 / 162 = 5.03

도루성공/실패 : 4 SB, 1 CS이므로
4 x 0.175 - 1 x 0.467 = 0.23

이제 모두 더해주면,
RAR = 57.5(타격) + 20.2(Replacement) + 0(수비) + 5.03(포지션 조정) + 0.23(도루) = 82.96
WAR = RAR/10 = 8.3

즉, 2009년 Mauer는 8.3승짜리 플레이어였다는 것이다.

Fangraphs의 계산 결과는 8.2이다. 역시 0.1의 차이는 Park Factor 및 소수점 반올림 등으로 인한 오차로 생각된다.


여기까지가 Fangraphs의 WAR 계산 방법인데... 주루플레이가 도루 성공/실패만 단순히 계산되고 있고, 포수 UZR이 없어 포수 수비력의 차이가 반영되지 않는다는 문제점이 있음을 알 수 있다. 이제 이를 보완하는 방법을 찾아 보자.

주루플레이에 대해서는 이전에 소개한 바와 같이, Baseball Prospectus의 EqBRR을 대신 사용할 수 있다. Chase Utley의 경우 2009년 EqBRR이 8.80으로, 매우 뛰어난 주자임을 알 수 있다. 도루성공/실패로 계산한 숫자 대신 이 EqBRR을 대신 넣어서 계산하면 아래와 같다.

RAR = 37.45(타격) + 22.9(Replacement Level) + 10.8(수비) + 2.33(포지션 조정) + 8.8(주루) = 82.28
WAR = RAR/10 = 8.2

Fangraphs에서 저평가되었던 주루 능력을 제대로 평가해준 결과, Chase Utley는 이제 8.2승짜리 선수가 되었다. 워낙 주루능력이 좋은 선수이다 보니, 주루를 이렇게 반영해주지 않았더라면 억울할 뻔 했다.


이번에는 Joe Mauer를 재평가해 보자.

EqBRR에 의하면 Joe Mauer의 주루 능력은 -3.60으로 나온다. 포수들은 일반적으로 좋은 주자가 아니라는 상식과 일치하고 있다.

포수 수비력
은 아직 의견이 분분한 분야이나... 이 글을 참고하면 Mauer는 2009년 수비에서 4.4점 기여한 것으로 되어 있다. 역시 Mauer는 수비가 좋은 포수라는 상식과 일치하는 결과이다.

이 둘을 기존 계산식의 주루와 UZR 대신 넣어서 계산해 보면,

RAR = 57.5(타격) + 20.2(Replacement) + 4.4(수비) + 5.03(포지션 조정) - 3.6(도루) = 83.43
WAR = RAR/10 = 8.3

수비에서 플러스 된 대신 주루에서 마이너스가 되어 RAR은 0.5점 올라가는 데 그쳤다. 결국 8.3 WAR로 거의 같은 결과를 얻게 됨을 알 수 있다. 비록 결과값은 비슷하지만 이것은 주루와 수비를 제대로 반영해 준 값이다.


나로서는 위의 방법이 크게 어렵지 않으면서도 타자의 공/수/주를 모두 커버하고 있어서 현재로서는 가장 좋은 툴이라고 생각하고 소개한 것이지만, 이러한 방법이 타자를 평가하는 단 하나의 절대적인 기준이 될 수는 없다. 취향에 따라 특정 스탯을 넣을 수도, 뺄 수도 있다. 예를 들어 EqA를 선호한다면 위의 계산에서 wRAA와 EqBRR을 빼고 대신 EqA로부터 Batting+Running Runs를 유도하여 넣어 주면 될 것이다. 혹 수비 스탯은 아무 것도 믿을 수 없다는 매우 회의적인 시각을 가진 사람이라면, UZR를 빼 버리면 될 것이다. 어떻게 활용하느냐는 각자의 몫이다.

또한, 세이버메트릭스에 절대적으로 의존하기보다는 활용 가능한 모든 정보(스카우팅 등)를 총 동원하여 여러 가지 각도에서 선수를 평가하는 것이 더욱 좋을 것이다. 물론 전문적인 스카우팅 훈련을 받거나 직접 선수생활을 해보지 않은 보통의 팬들이 자기 스스로의 안목을 가질 수 있는 방법은 역시 세이버메트릭스 만한 것이 없다고 생각하지만...


(이 글은 한국야구팬사이트에서도 보실 수 있습니다.)


Today's Music : Phil Collins Playing Drums!!! (with Chester Thompson)




Phil Collins는 무수히 많은 히트곡을 만든 송라이터이자 보컬리스트로서 유명하지만, 사실은 그런 것 이전에 매우 탁월한 드러머였다. 특히 Genesis의 초기 앨범들을 들어보면 Collins의 드럼 실력에 정말 놀라게 될 것이다. Collins는 공연시에 주로 자신의 드럼 연주로 오프닝을 장식하곤 했는데, 위의 두 라이브 클립에서는 세션 드러머 Chester Thompson(역시 아주 뛰어난 드러머임)과 환상적인 호흡을 보여준다.

Collins는 올해 가을, 아쉽게도 드러머로서 은퇴를 발표했다. 척수 부위의 부상으로 인해 스틱을 잡을 수조차 없게 되었기에, 50년간 쳐 왔던 드럼을 더 이상 칠 수 없게 되었다는 것이다. 너무나도 안타까운 일이 아닐 수 없다.

Posted by FreeRedbird
:

Jon Lester의 2009년 시즌 기록을 예로 하여 WAR을 구해 보자.


투수에 대한 이전 포스팅
에서 우리는 투수의 퍼포먼스를 평가하는 여러 가지 스탯을 살펴본 바 있다. 이 스탯들은 모두 해당 투수가 얼마나 실점을 하는지를 9이닝당 비율로 표시한 것이다. 댓글을 통해 ERA와 FIP, BABIP에 대해 camomile님과 매우 유익한 토론이 진행되었으므로 투수의 평가에 대해 관심이 있으신 분들은 꼭 위의 링크를 눌러 댓글을 읽어보시기 바란다. 원래 세이버메트릭스는 열린 개념이므로 정해진 결론은 없으며, 선택은 물론 여러분 각자의 몫이다...

어쨌거나, ERA나 FIP, tRA 등과 같은 스탯은 9이닝당 실점 수준을 보여 주지만, 여기에는 실제로 해당 투수가 그 시즌에 몇 이닝을 던졌는지는 반영되지 않는다. 9이닝당 1실점을 하는 압도적인 선발투수라고 해도, 50이닝만을 던지고 부상으로 시즌아웃 되었다면, 결코 좋은 평가를 하기는 어려울 것이다. 즉, 투수의 가치(Value)를 평가하기 위해서는 그가 얼마나 많은 이닝을 책임져 주었는지가 반드시 고려되어야 한다.

여기에서는, Fangraphs의 투수 WAR(Wins Above Replacement Level)를 계산하는 방식을 모델로 하여 투수의 가치를 구하는 방법을 살펴볼 것이다. 늘 강조하듯이 이것은 절대적인 단 하나의 방법은 아니며, 현재 나와 있는 여러 가지 방법 중 (내가 보기에) 가장 그럴 듯하여 소개하는 것이다. 또한 Fangraphs가 꽤 양질의 데이터를 모두 공짜로 보여주고 있어서 누구나 쉽게 찾아볼 수 있다는 장점도 있다.

(참고: 타자의 WAR 계산은 이전 포스팅을 참고.)

이 글에서는 우선 선발투수만을 대상으로 하고자 하며, 구원투수는 다음 포스팅에서 다루게 될 것이다. 구원투수를 따로 다루는 이유는 구원투수의 WAR 계산시 LI를 반영하는 단계가 중간에 포함되므로 별도의 설명이 필요하기 때문이다. 안그래도 항상 글이 긴 편인데, 구원투수의 LI 이야기까지 하면 아무도 읽고싶지 않은 엄청난 길이가 되어버릴 듯하여 글을 분리하기로 하였다.

이제부터 2009년 Jon Lester의 기록을 가지고, 투수의 WAR를 구하는 방법을 차례차례 살펴보도록 하겠다.
Fangraphs는 이 과정을 무려 일곱 개의 글에 걸쳐 설명하고 있는데, 내가 이걸 이해하는 데에는 무척 오랜 시간이 걸렸다. 나는 어떻게든 이 포스팅 하나로 몽땅 설명을 해 보고자 한다. 그것도 일곱 개의 원문보다 더 쉽게 말이다. 이게 가능한 목표일지는 모르겠지만... -_-;;;;


1. 투수가 속해 있는 리그의 평균 RA를 산출

우선 구하고자 하는 것이 ERA가 아니라 RA임에 유의해야 한다. 모든 종류의 실점을 아우르는 것이다.

Lester는 AL에서 뛰고 있다. 2009년 AL 전체 기록을 보면, 20173 1/3 이닝에서 10793점을 득점 혹은 실점하였음을 알 수 있다. (이런 기록은 Baseball-Reference에서 쉽게 얻을 수 있다.) 우리가 원하는 것은 경기당 평균 실점, 좀 더 정확히 이야기하면 9이닝당 평균 실점이다. 아래와 같이 간단히 계산할 수 있다.

AL avg RA = 10793 / 20173.333333 * 9 = 4.82


2. 투수의 조정 RA 산출

먼저 투수의 평균 실점 수준을 나타내는 스탯을 하나 골라서 가져온다. Fangraphs는 FIP를 이용하고 있고, 나도 FIP를 선호하므로, 여기에서는 FIP를 사용하도록 하겠다. (ERA나 tRA 등을 이용하고자 하는 경우에 대해서는 조금 아래에서 설명을 따로 드리도록 하겠다.) Lester의 2009년 FIP는 3.15이다.

FIP는 ERA Scale의 스탯이므로, 이를 RA Scale로 바꾸어 주어야 한다. ERA와 RA 사이에는 0.92:1의 관계가 경험적으로 존재하므로, 3.15를 0.92로 나눠 주면 RA Scale이 된다.

다음은 구장 효과인데... 구장 효과는 계산 방법이 여러가지이고 계산 방법에 따라 결과도 조금씩 다르다. 일단은 Fangraphs에서 제시하는 2004-2008년 5년간의 득점 Park Factor를 이용하도록 하겠다. Red Sox의 경우는 1.03으로 되어 있다. (이것은 홈에서 절반을 플레이하고 원정에서 절반을 플레이한다는 것을 이미 반영한 Adjusted Park Factor이다.) 즉, Lester는 Red Sox에서 뛰게 됨으로 인해 1.03배 더 실점하는 페널티를 가지고 있는 것이므로, 이를 보정해 주기 위해 다시 1.03으로 나눠 주어야 한다.

이 두가지 단계를 계산해 주면...

Adjusted RA = 3.15 / 0.92 / 1.03 = 3.32

이 3.32라는 숫자의 의미는... 중립적인 구장에서 평균 수준의 팀 동료들이 수비를 하고 있고, 상대 타선 역시 평균 수준의 선수들로 채워져 있을 경우, Lester가 9이닝을 던지면 3.32점 실점할 것이라는 뜻이다.

* 주 : FIP보다 ERA를 더 선호하는 경우, 위의 계산에서 FIP 대신 ERA를 사용하여 동일한 방법으로 Adjusted RA를 얻으면 된다. tRA를 사용하고자 하는 경우, tRA는 이미 RA Scale의 스탯이므로 0.92로 나눠 줄 필요가 없다. tRA에 구장 효과만 반영해 주면 된다.


3. 게임 당 평균 투구 이닝 계산

Lester는 32게임에 나와 203 1/3 이닝을 던졌으므로, 게임당 평균 투구 이닝은 다음과 같다.

IP/G = 203.333333 / 32 = 6.35


4. Runs per Win 계산

이 부분이 가장 어려운 부분일 것 같은데... 보통의 상황에서는 10점 = 1승으로 대충 계산하면 별로 오차가 발생하지 않는다. 하지만, 투수는 팀의 실점에 미치는 영향이 워낙 크기 때문에, 어떤 투수가 마운드에 있는지에 따라 Run Scoring Environment가 바뀌고, 이에 따라 점수와 승수의 관계도 바뀌게 된다.

조금 더 쉽게 생각하면... Lester와 같은 좋은 투수는 실점을 덜 하게 되므로, 보통 투수가 마운드에 있을 때에 비해 득점을 덜 해도 승리를 할 수 있게 되는 것이다. 반대로 3류 투수가 마운드에 있다면, 소속팀이 승리를 하기 위해서는 더욱 많은 득점을 해야 할 것이다. 이러한 변화를 반영하는 것이다.

투수의 퍼포먼스에 따른 점수와 승수의 관계를 계산하는 방법은 역시 여러가지가 있으며, 대부분은 Pythagenpat과 같은 득점/실점과 승률의 관계로부터 계산식을 이끌어내게 된다. 그러나, Pythagenpat을 직접 사용할 경우 제곱근을 구해야 하는 등 계산식이 복잡해지므로, 다음과 같은 근사식을 사용한다.

[((상대 팀 이닝*상대 팀 실점수준)+(소속 팀 이닝*소속 팀 실점수준)/(상대 팀 이닝+소속 팀 이닝))+2] * 1.5

근사식도 너무 복잡해 보이지만... 예를 통해 보면 조금 쉬울 것이다. 이닝 및 실점수준은 모두 9이닝을 기준으로 한다는 것을 기억하자.

상대 팀의 수준은 천차만별이겠지만... 162게임의 긴 시즌을 치르다 보면 여러 상대를 만나게 되므로, 결국 리그 평균에 가까워질 것이라고 볼 수 있다. 따라서, 상대 팀은 9이닝 당 리그 평균인 4.82점을 실점할 것으로 볼 수 있다. 한편 소속 팀의 경우... Lester가 선발로 나온 경기에서 9이닝 중 Lester가 책임져 주는 이닝은 평균 6.35이닝이었다. 나머지 2.65이닝은 리그 평균 수준으로 실점한다고 보고 계산한다. (분석 대상인 투수를 제외하고는 모두 리그 평균을 가정한다. 이렇게 해서 팀 동료들의 활약으로 인해 이득이나 손해를 보는 부분을 제거하고자 하는 것이다.)

이렇게 하면, 상대 팀 9이닝 + Lester 6.35 이닝 + Lester의 동료 구원투수들 2.65이닝 = 총 18이닝이 분모가 된다. 계산을 해 보자.

Runs per Win = [(((9 * 4.82) + (6.35 * 3.32 + 2.65 * 4.82)) / 18) + 2] * 1.5 = 9.43

즉, Lester가 마운드에 있음으로 해서 9.43점 = 1승으로 바뀌는 것이다.


5. RAA/9 및 WAA/9, 기대 승률 계산

2번에서의 계산 결과 Lester는 9이닝 당 평균 3.32점을 실점하는 것으로 계산되었다. 한편, 리그 평균 투수들은 4.82점을 실점하므로, Lester는 리그 평균 투수에 비해 9이닝당 1.49점을 덜 내주는 것이 된다. (1.50이 아닌 이유는 소숫점 반올림 때문이다. 아래에 첨부한 엑셀파일 참고.) 이를 4번에서 계산한 9.43점 = 1승의 관계를 이용하여 환산하면, Lester는 리그 평균 투수에 비해 9이닝당 0.158승 소속팀에 더 기여하는 것이 된다. 리그 평균 투수는 이론적으로 승률이 5할일 것이므로, 팀 동료와 상대팀 선수들이 모두 평균 수준일 때 Lester 등판 시의 9이닝 당 기대 승률은 0.500 + 0.158 = 0.658이다.


6. Replacement Level

Replacement Level 팀은 .300 정도의 승률을 가지는 것으로 생각된다. 팀 승률이 .300이라고 해서 선수들이 모두 평균이 50%일 때 각각 30% 정도의 능력을 가지고 있는 것은 아니다. 실제로는 .300 타자, .300 투수, .300 수비의 팀은 승수효과에 의해 .300보다 훨씬 낮은 승률을 기록하게 되어 버리는 것이다.

.300의 팀 승률을 얻기 위해, 선발투수는 .380, 구원투수는 .470 정도의 능력이 요구된다. 이는 어느 정도 통계적으로도 검증된 수치이고... 이론적인 설명을 위해서는 Odds Ratio Method에 대한 배경지식이 필요한데... 이 이야기를 여기서 하게 되면 글이 완전히 산으로 가게 되므로... 이 부분은 추후 별도로 포스팅하도록 하겠다.

여기서는 일단 Tom Tango와 Fangraphs의 주장을 받아들여 Replacement Level의 투수의 승률이 .380인 것을 인정하고 넘어가도록 하자. 이것은, 소속 팀의 다른 동료들이 모두 리그 평균 수준이고, 상대 팀도 전부 리그 평균 수준의 선수들로 구성되어 있을 경우, Replacement Level 투수(예를 들어 AAAA 투수)가 선발 등판하여 9이닝을 던지면 .380의 승률을 기대할 수 있다는 의미이다.


7. WAR/9

9이닝당 Jon Lester의 기대 승률은 0.658이었다. 그리고 Replacement Level 선발투수의 기대 승률은 0.380이었다. 따라서, 9이닝을 기준으로 Lester는 Replacement Level 투수보다 0.658 - 0.380 = 0.278 더 기대 승률이 높다고 할 수 있다.


8. WAR

드디어 마지막 단계까지 왔다. 7번에서 얻은 9이닝 당 숫자를 Jon Lester가 던진 실제 이닝으로 환산하여 주면 되는 것이다. Lester는 203 1/3 이닝을 던졌으므로...

WAR = 0.278 * 203.333333 / 9 = 6.3

결국 2009년 시즌에, Jon Lester는 Replacement Level 투수에 비해 6.3승 더 팀에 기여한 것이다.


- NL 투수 계산하기 -

NL 투수는 AL 투수와 비교하여, 매 경기마다 타석에 들어선다는 중요한 특징이 있다. 거의 대부분의 경우, 투수들은 형편없는 타자들이므로, 타석에서는 팀에 오히려 피해를 입히게 된다. 이를 반영해 주어야 제대로 된 선수 가치의 계산이 가능할 것이다.

2009년 Tim Lincecum의 경우, 투구 내용만 가지고 보면 8.9 WAR의 시즌을 보냈지만, 타석에서 0.7승 만큼 오히려 팀에 해를 끼쳤으므로, 결국 최종 WAR는 8.9 - 0.7 = 8.2 가 되는 것이다.

첨부파일을 통하여 이를 확인하시기 바란다.


- 투수의 수비 -

투수의 수비력은 이 글을 쓰는 현재 WAR에 반영되고 있지 않고 있다. 투수의 UZR 데이터가 없기 때문이다. 수비가 좋은 투수와 좋지 않은 투수의 경우 이를 적절히 감안하여 주어야 할 것이다. 특별한 근거는 없으나 투수 수비의 영향은 가장 극단적인 경우 한 시즌에 최대 +/- 5 Runs 정도 되지 않을까 싶다.


첨부: 선발투수 WAR 계산의 예 (AL, NL 각 5명)


Today's Music : Pearl Jam - Given to Fly (Live)


위대한 밴드의, 위대한 곡의, 위대한 공연.
Posted by FreeRedbird
:

(주: 이 글의 내용 및 첨부된 계산 파일은 일부 오류를 포함하고 있으므로, 내용을 수정하여 다시 올린 새 글을 참고하시기 바란다.)

 


Chase Utley : 2008년 NL MVP 투표에서는 고작 15위에 머물렀지만, WAR로 보면 Pujols에 이어 메이저리그 전체 2위였다. 올 시즌 타자 WAR 리스트에서도 Pujols와 Hanley Ramirez에 이어 3위를 달리고 있지만, MVP 투표에서는 또 10위권 밖으로 밀려날 것이다. 항상 실력에 비해 충분한 인정을 받지 못하고 있는, 심각하게 저평가된 플레이어이다.


타자가 팀의 득점에 기여하는 방법은 크게 보아 공격(타격), 수비, 주루가 있을 것이다. 그래서 좋은 타자를 이야기할 때 "공, 수, 주 3박자를 두루 갖췄다"는 표현을 사용하기도 한다.

각각의 타자에 대해서 이러한 득점 기여의 정도가 어느 정도인지를 측정하기 위해, 지금까지 공격, 수비, 주루의 측면을 차례로 검토해 왔다. 또한 비교 대상으로서 절대적 기준이 되는 Replacement Level 및 수비 포지션에 따른 조정 수준에 대해서도 살펴본 바 있다. 이 글을 쓸 때까지 다소 시간 간격이 있었으므로... 다시 한번씩 훑어 보시면 이해에 도움이 되시리라고 생각하여 링크를 걸어 본다.

1. 타격 기여 수준 : wOBA 및 wRAA
2. 비교의 절대적 기준 : Replacement Level
3. 수비 기여 수준 : UZR, TZ
4. 포지션별 차이 : Positional Adjustment
5. 주루 기여 수준 : 도루 성공과 실패

이를 종합하면 특정 타자의 전체 기여 수준, 혹은 그의 가치(Value)를 계산할 수 있는데, 이것이 바로 RAR(Runs Above Replacement level) 및 WAR(Wins Above Replacement level) 이다.

먼저 RAR을 구해 보면... 위의 다섯 가지를 차례로 더해 주면 된다.

RAR = wRAA + Replacement Level + UZR + Positional Adjusment + SB/CS Runs

이제 RAR을 WAR로 환산해야 하는데... 원칙적으로는 팀 전체 득점과 실점에 대해 해당 플레이이어의 RAR이 미치는 점수 변화 정도를 가지고 Pythagorean Expectation의 식에 넣어서 계산하는 것이 맞지만... Pythagorean 관련 포스팅에서 언급한 바와 같이, "10점 득점 = 1승"의 단순한 계산 방법이 의외로 높은 정확도를 가지므로, 계산의 편의를 위해 이를 활용하는 것이 좋을 것이다. 즉, 아래와 같이 쉽게 계산할 수 있다.

WAR = RAR/10

이제부터 실제 예를 통해서 자세히 살펴보자.
계산에 필요한 Raw Data는 Retrosheet, Baseball-Reference, Fangraphs의 세 사이트에서 얻었으며, 이후의 모든 계산은 직접 하였다. 계산에 사용한 엑셀 sheet를 첨부하였으므로, 계산 결과를 쉽게 확인하실 수 있을 것이다.


아래는 Chase Utley의 2008년 성적이다.

공격 : 159 G, 607 AB, 707 PA, 99 1B, 41 2B, 4 3B, 33 HR, 50 NIBB, 14 IBB, 27 HBP, 5 RBOE
수비 : 20.2 UZR
주루 : 14 SB, 2 CS


(NIBB : 고의사구가 아닌 볼넷, IBB : 고의사구, RBOE : 에러로 인해 타자가 출루한 경우)

순서에 따라 차례차례 계산해 보면...

1-1. Park Adjust

먼저 wOBA를 계산하기에 앞서서, 구장으로 인한 효과를 보정해 주는 것이 계산의 신뢰도를 높이는 데 도움이 될 것이다. Park Factor를 계산하는 방법은 여러 가지가 있고, 개인적으로는 어떤 방법이 가장 좋은지 아직 결론을 내리지 못하고 있다. 일단 여기서는 Fantasy411의 2006-08년 Park Factor를 빌려와서 사용하도록 하겠다. (단, RBOE의 Park Factor는 어디에서도 얻을 수가 없었다. 어차피 Utley의 RBOE가 5에 불과하여 Park Factor가 있더라도 그다지 영향은 없었겠지만...)



정밀한 조정을 위해서는 Utley의 경기별 홈구장을 일일이 찾아서 계산해야겠지만... 너무 품이 많이 들므로, 다음과 같은 간단한 방법을 사용하였다. 1) 타석의 절반은 홈, 절반은 원정에서 기록한 것으로 본다. 2) 원정구장들의 평균 Park Factor는 100이다. (실제로는 홈구장을 뺀 15개 NL 구장의 평균이므로 100에 근접한 값일 것이나, 큰 오차는 없으리라고 본다) 3) 따라서, 홈 구장 Park Factor의 50%를 Raw Stat에 적용하여 보정한다.

이렇게 조정한 Utley의 성적은 아래와 같다.
707 PA, 98 1B, 41 2B, 4 3B, 29 HR, 51 NIBB, 13 IBB, 27 HBP, 5 RBOE

홈런이 줄어든 것이 눈에 띈다. 나머지 기록은 거의 변화 없음을 알 수 있다.

1-2. wOBA 및 wRAA 계산

이전의 포스팅에서 wOBA를 소개할 때에 비하여, 지금은 wOBA를 더욱 신뢰하게 되었다. 최근 THT의 Colin Wyers가 수행한 연구에 의하면, 90년대 및 2000년대의 메이저리그 기록을 가지고 분석할 경우 wOBA가 EqA보다도 정확도가 좀 더 높은 것으로 나타났기 때문이다. 현재 세이버메트릭스 진영에서 득점 기여 수준을 측정하는 가장 우수한 스탯으로 여겨지는 wOBA와 EqA의 승부(둘 다 실제 득점과의 correlation이 0.97로 매우 높으므로, 정말 뛰어난 스탯들이다)에서 wOBA가 근소하게나마 더 우수한 것으로 판명되었기 때문에, 타자의 공격 기여도를 측정함에 있어 wOBA를 근간으로 삼는 것은 현재로서는 최선의 방법이라고 생각된다. 또한, wOBA가 EqA보다 훨씬 계산식이 간단하고 이해하기 쉽다는 것도 큰 장점이다.

계산식 및 이론적 근거는 이전의 포스팅을 참고하시고... Park Factor를 적용한 기록을 가지고 Utley의 wOBA를 계산한 결과는 다음과 같다. (앞에 첨부한 엑셀 sheet 참조)

(Park Adjusted) wOBA = 0.382

한편, 2008년 NL 전체 타격 기록을 가지고 구한 리그 평균 wOBA는 0.330이므로, 이를 이용하여 Utley의 wRAA를 구하면 다음과 같다. (엑셀 sheet 참조)

wRAA = 32.05 Runs

즉, 2008년 시즌의 Chase Utley는 NL 평균 타자에 비해 팀 득점에 32.05점 더 기여했다는 의미가 된다.


2. wRAA를 Batting RAR로 : Replacement Level의 설정

wRAA는 Runs Above Average라는 단어의 의미에서도 알 수 있듯이 리그 평균과 비교하는 스탯이므로, 이를 Replacement Level과의 비교로 조정하여 RAR(Runs Above Replacement leve)로 만들 필요가 있다. 이전부터 한 시즌을 기준으로 리그 평균 수준의 주전 선수와 Replacement Level의 땜빵 선수 차이에는 20점 혹은 2승 정도의 차이가 난다는 경험적 분석 결과들이 있었는데, 작년 말에 THT에 게재된 Sean Smith의 뛰어난 연구는 이를 다시 한 번 확인시켜 주었다. 즉, 600 PA를 기준으로 리그 평균과 Replacement Level의 사이에는 20점(20 Runs)의 기여 수준 격차가 있다는 것이다. 이러한 격차를 wRAA 값에 더해주면, RAR로 쉽게 환산된다.

Utley의 경우로 돌아가면, Utley는 707 PA를 기록했으므로, 707 PA에서 평균과 Replacement Level의 격차를 계산해 보면...

600/20 x 707 = 23.57 Runs

이 값이 Utley의 Replacenemt Level 값이 된다.


3. 수비 기여 수준 : UZR

이전의 포스팅에서 ZR을 개선한 합리적인 스탯으로 UZR, TZ(TZR), +/-를 소개한 바 있다. 그 포스팅에서 언급한 바와 같이, +/-는 유료 정보이며 연말에 발표되고, TZ의 경우 현역 메이저리거들에 대한 데이터는 아직 작업중인 상태여서 조회가 되지 않으므로, 현재로서는 UZR이 거의 유일한 선택이라고 할 수 있다. UZR은 Fangraphs에 거의 실시간으로 계속 업데이트 되므로, 지난 시즌의 결과물 뿐 아니라 현재 진행중인 시즌에 대해서도 누구가 쉽고 빠르게 정보를 얻을 수 있다. 뿐만 아니라, TZ의 창시자인 Sean Smith조차 UZR이 가장 뛰어난 수비 스탯이라고 인정하고 있으므로, TZ나 +/- 대신 UZR을 쓰는 것이 그다지 나쁜 선택은 아닐 것 같다.

여담이지만, 2000년대 초중반에 Cardinals는 UZR의 창시자인 MGL(Mitchel Lichtman)에게 상당히 큰 돈을 주고 UZR 데이터를 독점한 바 있다. UZR이 Fangraphs에 공개될 수 있었던 것은 이러한 독점 계약이 종료되었기 때문이다. 이런 것으로 보면 Cardinals도 이전부터 세이버메트릭스에 상당한 관심과 이해가 있었던 것 같다.

다시 본론으로 돌아가서... Utley는 2루에서 20.2 Runs, 1루에서 0.4 Runs를 기록하였으므로, 이를 간단히 더해주면 된다.

UZR = 20.6 Runs

이는 Utley가 2008년 시즌에 수비를 통해 실점을 20.6점 방지하는 정도의 기여를 했음을 의미한다.


4. Positional Adjustment

이전의 포스팅에도 있지만, 다시 한 번 포지션별 조정 점수를 정리해 보면 아래와 같다.

포수 : +12.5 Runs
유격수 : +7.5 Runs
중견수, 2루수, 3루수 : +2.5 Runs
좌익수, 우익수 : -7.5 Runs
1루수 : -12.5 Runs
지명타자 : -17.5 Runs


이 조정 점수는 162게임의 풀 시즌을 기준으로 만들어진 것임에 유의해야 한다. 162게임을 이닝으로 환산하면 1,458 이닝이 되므로, 실제 수비에 참가한 이닝을 1458로 나눠서 위의 조정 점수를 곱해 주면 실제 해당 시즌의 조정 점수가 될 것이다.

Utley는 2008년에 2루에서 1395 2/3 이닝, 1루에서 14이닝을 뛰었다. 따라서...

((2.5x1392.67) + (-12.5x14)) / 1458 = 2.27 Runs

이 점수가 Utley의 수비 포지션에 따른 최종 조정 점수가 된다.


5. 주루플레이의 기여 수준: 도루 성공과 실패

이전의 포스팅에서 밝힌 바와 같이, 도루 성공은 0.175, 도루 실패는 -0.467점의 가치를 지닌다. 개인적으로 그 밖의 주루 스탯에 대해 아직 신뢰하지 않고 있는 관계로, 단지 도루 성공과 실패만을 계산할 것이다.

Utley는 2008년에 14 SB, 2 CS를 기록하였으므로...

14x0.175 - 2x0.467 = 1.52 Runs

도루를 통해 1.52점 만큼 팀 득점에 기여하였다는 결론을 얻을 수 있다.


6. RAR 및 WAR의 산출

이제 모든 구성 요소의 계산을 다 했으므로, 지금까지 나온 값을 모두 더하면 타자의 총 기여 수준, 혹은 그의 가치(Value)가 된다.

RAR = 32.05(타격) + 23.57(Replacement Level) + 20.6(수비) + 2.27(포지션 조정) + 1.52(도루)
      = 80.01


득점 10점은 1승과 동일하므로,

WAR = RAR/10 = 8.0

즉, 거칠게 표현하자면, 2008년 Chase Utley는 8승짜리 플레이어였다는 것이다.

2008년 Phillies는 92승 70패를 기록하였는데, 만약 Utley 대신 1년 내내 Tadahito Iguchi나 Eric Brunett과 같은 Replacement Level 플레이어들로 2루를 돌려막기 했다면, Phillies는 아마도 84승 78패를 기록했을 것이라는 이야기이다. 이런 성적으로는 플레이오프에 나갈 수 없었을 것이고, 따라서 월드시리즈 우승도 할 수 없었을 것이다. 이것이 바로 진정한 스타 플레이어 한 명의 위력이다.

Fangraphs의 Utley 페이지를 보면, 2008년 그의 WAR를 8.1로 계산하고 있다. Fangraphs의 로직은 이 글에서 내가 설명해 온 바와 동일하다고 보면 된다. 0.1의 오차는 타격 기여도 계산에서 생겨난 것인데, 아마도 wOBA 계산 방법이 약간 다르고, Park Factor의 적용에도 차이가 있을 것으로 추정된다. 또한, Fangraphs는 주루를 따로 표시하지 않고, 타격에 합산하여 놓고 있다.


한편, 첨부된 엑셀 파일에는 작년 AL MVP였던 Dustin Pedroia의 WAR도 계산되어 있다. 다만, 이쪽은 Fangraphs가 6.6 WAR로 계산했는데 반해 엑셀 sheet에서는 5.8이 되어서, 차이가 0.8로 제법 크게 나타나고 있다. 실제 계산된 값을 보시면 알 수 있듯이 타격 기여 수준을 빼고는 값이 완전히 동일하므로... 역시 Park Factor의 차이가 작용하고 있는 것으로 추정된다. (Fangraphs는 어떤 Park Factor를 적용하고 있는지 명시하지 않고 있다.) 또한, schedule의 차이를 고려한 플러스 점수가 있는 것 같기도 하다. AL 동부에 속해 있는 Red Sox는 아무래도 Phillies보다는 강한 팀들을 상대로 게임을 하게 되므로, 이를 보정해 주었을 가능성이 있다. 이러한 schedule에 의한 보정이 어떻게 이루어지는지 파악이 될 경우에는, 여기에 추가로 업데이트를 하고자 한다.

Posted by FreeRedbird
: