(набор данных размещен в конце)
https://github.com/timoudas/NHL-RatingSystem/blob/master/NHL_Stats
Код для воссоздания набора данных
Как создать две колонки, которые отслеживают процент выигрыша у противников?
(accumulated wins/accumulated games play)
последовательно по ходу игр.
Пример: команда А играет команду Б
Team A has previously played Team C and Team D
Team B has previously plaved Team E and Team F
Итак, набор данных выглядит так:
HomeTeam AwayTeam HomeWin AwayWin TotalGamesPlayedByHomeTeam TotalGamesPlayedByAwayTeam TotalWinsHomeTeam TotalWinsAwayTeam
Team A Team C 0 1 0 0 0 0
Team D Team A 0 1 0 1 0 0
Team B Team E 1 0 0 0 0 0
Team F Team B 0 1 0 1 0 1
Team A Team B 1 0 2 2 1 2
Таким образом, в набор данных добавляются два столбца, HT_OOR(HomeTeam's Opponents Opponents Record)
и AT_OOR(AwayTeam's Opponents Opponents Record)
. HT_OOR отслеживает предыдущих противников команды AWAY и AT_OOR отслеживает предыдущих противников команды HOME.
Таким образом, в моем примере для игры между командой A и командой B HT_OOR и AT_OOR будут выглядеть следующим образом:
HT_OOR= (Team_E_TotalWins + Team_F_TotalWins) / (Team_E_TotalGamesPlayed+Team_F_TotalGamesPlayed)
AT_OOR= (Team_C_TotalWins + Team_D_TotalWins) / (Team_C_TotalGamesPlayed+Team_D_TotalGamesPlayed)
Важным моментом при использовании этого метода всегда является использование ближайших статистических показателей, когда они последовательно подсчитываются.
Другим методом было бы сгруппировать Home_Win и Away_Win и сгруппировать Home_Team и Away team и перебрать весь список, считая появления каждой команды отдельно и соответствующие потери.
Результат для строки 5 будет следующим:
HT_OOR AT_OOR
0 0.5
Поскольку каждая строка представляет собой уникальную игру с двумя командами, столбцы отслеживания (HT_OOR, AT_OOR) должны относиться к HomeTeam и AwayTeam в этой строке.
Как вы определяете эти условия, чтобы оно работало, возможно ли это?
Если есть какая-либо проблема, или если мне что-то непонятно, скажите или спросите.
Dataset
Снимок экрана набора данных, переменные:
"a_"=Away Team, "h_"=Home Team,
HTWins= Total Previous wins HomeTeam
ATWins=Total Previous wins AwayTeam
a_games=Total games played by away team
h_games=Total games played by home team
h_won = Home Team Win
Dataset
h_WinPerc a_WinPerc h_teamID a_teamID h_team a_team HTWins ATWins h_Won a_Won a_games h_games game_id
0.0 0.0 52 10 Winnipeg Jets Toronto Maple Leafs 0 0 0 1 1 1 2017020001
0.0 0.0 5 19 Pittsburgh Penguins St.Louis Blues 0 0 0 1 1 1 2017020002
0.0 0.0 22 20 Edmonton Oilers Calgary Flames 0 0 1 0 1 1 2017020003
0.0 0.0 28 4 San Jose Sharks Philadelphia Flyers 0 0 0 1 1 1 2017020004
0.0 0.0 6 18 Boston Bruins Nashville Predators 0 0 1 0 1 1 2017020005
0.0 0.0 7 8 Buffalo Sabres Montréal Canadiens 0 0 1 0 1 1 2017020006
0.0 0.0 3 21 New York Rangers Colorado Avalanche 0 0 0 1 1 1 2017020007
0.0 0.0 9 15 Ottawa Senators Washington Capitals 0 0 1 0 1 1 2017020008
0.0 0.0 17 30 Detroit Red Wings Minnesota Wild 0 0 1 0 1 1 2017020009
0.0 0.0 16 5 Chicago Blackhawks Pittsburgh Penguins 0 0 1 0 1 2 2017020010
0.0 0.0 24 53 Anaheim Ducks Arizona Coyotes 0 0 1 0 1 1 2017020011
0.0 1.0 26 4 Los Angeles Kings Philadelphia Flyers 0 1 1 0 1 2 2017020012
Ожидаемый результат следующий.
HT_OOR(HomeTeam's Opponents Opponents Record)
: (accumulated wins/accumulated games play)
AT_OOR(AwayTeam's Opponents Opponents Record)
: (accumulated wins/accumulated games play)