View Single Post
Old 04-06-2019, 07:29 PM   #686
stealofhome
Hall Of Famer
 
stealofhome's Avatar
 
Join Date: Apr 2014
Posts: 2,282
MLB Awards Selection

I'm not able to do everything I would like with this one - Most of the advanced stats are not exportable from the in-game database and there is no flag that I can find for MLB rookies.

Code:
#library(readr)
#library(dplyr)
#leagues <- read_csv("Out of the Park Developments/OOTP Baseball 19/saved_games/OOTPLeagueReborn.lg/import_export/general/leagues.csv")

#import data (players_basic, players_value, players_career_pitching_stats, players_career_batting_stats)
players <- read_csv("Out of the Park Developments/OOTP Baseball 19/saved_games/OOTPLeagueReborn.lg/import_export/csv/players.csv")
players <- unite(players, name, c("first_name","last_name"), sep = " ")
players_career_pitching_stats <- read_csv("Out of the Park Developments/OOTP Baseball 19/saved_games/OOTPLeagueReborn.lg/import_export/csv/players_career_pitching_stats.csv")
players_value <- read_csv("Out of the Park Developments/OOTP Baseball 19/saved_games/OOTPLeagueReborn.lg/import_export/csv/players_value.csv")
players_career_batting_stats <- read_csv("Out of the Park Developments/OOTP Baseball 19/saved_games/OOTPLeagueReborn.lg/import_export/csv/players_career_batting_stats.csv")

#Reduce pitching data to MLB in current year and find rank
pmlb <- players_career_pitching_stats %>% 
  select(player_id, year, league_id, team_id, split_id, bf, gs, wpa, war) %>% 
  filter(league_id=='100' & split_id=='1'& year==max(year)) %>%
  merge(players[ , c("player_id", "name")], by = "player_id") %>% 
  merge(players_value[ , c("player_id", "pot")], by = "player_id") %>% 
  merge(teams[ , c("team_id", "sub_league_id")], by = "team_id") %>% 
  mutate(sprank = wpa+2*war, rprank = 2*wpa+war)

#Reduce hitting data to MLB in current year and find rank
bmlb <- players_career_batting_stats %>% 
  select(player_id, year, league_id, team_id, split_id, pa, wpa, war) %>% 
  filter(league_id=='100' & split_id=='1'& year==max(year)) %>%
  merge(players[ , c("player_id", "name")], by = "player_id") %>% 
  merge(players_value[ , c("player_id", "pot")], by = "player_id") %>% 
  merge(teams[ , c("team_id", "sub_league_id")], by = "team_id") %>%
  mutate(rank = wpa+2*war, position = "H")

#merge hitters and pitchers for MVP
mlbmvp <- pmlb %>% 
  bind_rows(bmlb) %>% 
  arrange(sub_league_id, desc(rank)) %>% 
  group_by(sub_league_id) %>% 
  top_n(3, rank) %>% 
  select(player_id, name,position, sub_league_id)

#POY award
mlbpoy <- pmlb %>% 
  arrange(sub_league_id, desc(sprank)) %>% 
  group_by(sub_league_id) %>% 
  top_n(3, sprank) %>% 
  select(player_id, name, sub_league_id)

#Reliever award
mlbreloy <- pmlb %>% 
  filter(gs=='0' & wpa>'0') %>% 
  arrange(sub_league_id, desc(rprank)) %>% 
  group_by(sub_league_id) %>% 
  top_n(3,rprank) %>% 
  select(name, sub_league_id)

View(mlbmvp)
View(mlbpoy)
View(mlbreloy)
stealofhome is offline   Reply With Quote