NHL이 대략 13경기 정도 남았다.
그래서 올해의 신인왕을 예측하고자 한다.
참고로 올해 스탯밖에 없어서 선수 예측을 머신러닝으로 돌리긴 어려워서 스탯들만 보고 판단하고 자 한다.
골리 부분
20경기 이상 출전한 선수들을 경기수 대로 선정하였다.
사무엘 엘슨이 가장 많은 경기를 출전했으며, 표토르 코체코프, 루카스 도스가 뒤를 잇고 있다.
Sv%와 GAA를 통한 선수들의 스탯을 시각화로 진행했다.
import matplotlib.pyplot as plt
import seaborn as sns
import random
# 데이터프레임의 인덱스를 다시 설정
df1 = df1.reset_index(drop=True)
# 'Sv%' 열을 기준으로 데이터프레임을 역순으로 정렬
df1_sorted = df1.sort_values(by='Sv%', ascending=False)
# 연도와 해당 연도의 홈런 수 데이터
years = df1_sorted['Player']
home_runs = df1_sorted['Sv%']
# 그래프 크기 설정
plt.figure(figsize=(12, 6))
# 랜덤 색상 선택
def get_random_color():
return "#" + ''.join([random.choice('0123456789ABCDEF') for i in range(6)])
# 그래프 그리기 (랜덤 색상 적용)
bars = plt.bar(years, home_runs, color=[get_random_color() for _ in range(len(years))])
plt.xlabel('Player')
plt.ylabel('Sv%')
plt.title('Sv%')
# 막대 위에 값 표시 (소수점으로)
for bar in bars:
height = bar.get_height()
plt.text(bar.get_x() + bar.get_width() / 2, height, f'{height:.3f}', ha='center', va='bottom')
plt.show()
세이브 퍼센트지를 보자면 조엘 호퍼가 가장 높은 세이브율을 보여주고 있고 다음으로는 표토르 코체코프, 다닐 타라소브 선수가 뒤를 잇고 있다.
import matplotlib.pyplot as plt
import seaborn as sns
import random
# 데이터프레임의 인덱스를 다시 설정
df1 = df1.reset_index(drop=True)
# 데이터프레임을 역순으로 정렬
df1 = df1.sort_values(by='GAA', ascending=True)
# 연도와 해당 연도의 홈런 수 데이터
players = df1['Player']
GAA = df1['GAA']
# 그래프 크기 설정
plt.figure(figsize=(12, 6))
# 랜덤 색상 선택
def get_random_color():
return "#" + ''.join([random.choice('0123456789ABCDEF') for i in range(6)])
# 그래프 그리기 (랜덤 색상 적용)
bars = plt.bar(players, GAA, color=[get_random_color() for _ in range(len(players))])
plt.xlabel('Player')
plt.ylabel('GAA')
plt.title('GAA')
# 막대 위에 값 표시 (소수점으로)
for bar in bars:
height = bar.get_height()
plt.text(bar.get_x() + bar.get_width() / 2, height, f'{height:.2f}', ha='center', va='bottom')
plt.show()
GAA로 봤을 때 표토르 코체코프가 가장 좋은 성적을 보이고 있으며, 다음으로는 사무엘 엘손, 조엘 호퍼 순으로 나타났다.
Sv%와 GAA를 종합적으로 봤을 때 표토르 코체코프와 조엘 호퍼 선수의 성적이 두드러진 것을 알 수 있다.
두 선수가 속한 팀인 캐롤라이나와 세인트루이스의 성적은 다음과 같다.
캐롤라이나는 뉴욕 레인저스와 지구 우승 경쟁 세인트루이스는 와일드카드 경쟁을 하고 있다.
둘이 없었다면 이 정도의 성적을 내기에도 어려웠을 것이다.
루카스 도텔의 선수의 경우 첫 달에 이달의 신인상을 받았지만 그 이후로는 좋은 성적을 내지 못하고 있다.
표토르 코첼로프 선수의 경우 2월 달에 이 달의 신인상을 받으면서 캐롤라이나의 상승세에 큰 도움을 주고 있다.
공격수 & 수비수 부분(포인트 순)
포인트 순으로 정리한 공격 & 수비수들의 스탯이다.
코너 베다르가 압도적인 선수를 보이고 있으며, 이어서 브록 파버, 마르코로시, 루크 휴즈 선수가 뒤를 잇고 있다.
코너 베다르가 좋은 스탯을 보이고는 있지만 부상으로 인해 한 달 결장이 있어 경기 수가 적은 게 흠이다.
import matplotlib.pyplot as plt
import seaborn as sns
import random
# 데이터프레임의 인덱스를 다시 설정
df2 = df2.reset_index(drop=True)
# 데이터프레임을 역순으로 정렬
df2 = df2.sort_values(by='P', ascending=False)
# 데이터프레임에서 상위 7개의 행만 선택
df2_top7 = df2.head(7)
# 연도와 해당 연도의 홈런 수 데이터
years = df2_top7['Player']
home_runs = df2_top7['P']
# 그래프 크기 설정
plt.figure(figsize=(10, 6))
# 랜덤 색상 선택
def get_random_color():
return "#" + ''.join([random.choice('0123456789ABCDEF') for i in range(6)])
# 그래프 그리기 (랜덤 색상 적용)
bars = plt.bar(years, home_runs, color=[get_random_color() for _ in range(len(years))])
plt.xlabel('Player')
plt.ylabel('P')
plt.title('Player Points')
# 막대 위에 값 표시 (소수점 제거)
for bar in bars:
height = bar.get_height()
plt.text(bar.get_x() + bar.get_width() / 2, height, f'{int(height)}', ha='center', va='bottom')
plt.show()
2달 연속으로 이달의 신인상을 받고 좋은 성적을 찍고 있지만 혼자만 잘하고 있다.
베다르가 부상으로 빠진 사이 브록 파버 선수가 2월의 신인상을 차지하는 등 좋은 면모를 보이고 있다.
코너 베다르가 속한 시카고와 브록 파버, 마르코로시 선수가 속한 미네소타는 상황이 정말 다르다.
시카고가 리빌딩으로 성적에 연연하지 않는 반면 미네소타는 와일드카드 경쟁을 막판까지 하고 있다.
그래도 베다르가 없었다면 시카고는 아예 꼴찌를 하고 있지 않았을까?
결론
팀 성적이 안 좋아도 베다르가 신인상인 칼 더 트로피를 받을 가능성이 98%가 되어 보인다.
내년의 시카고는 베다르를 보조할 수 있을까?
'각종 스포츠 > NHL' 카테고리의 다른 글
제프 스키너, 포스트시즌을 가고 싶은 선수 (0) | 2024.04.04 |
---|---|
가장 먼저 포스트시즌 진출이 확정된 뉴욕 레인저스 (0) | 2024.03.28 |
올 시즌 NHL Points Leader를 머신러닝으로 예측해보자 (2) | 2024.03.13 |
트레이드 데드라인 끝 (0) | 2024.03.10 |
환대 받은 시카고의 영웅, 패트릭 케인 (2) | 2024.02.29 |