Code:
#library(readr)
#library(dplyr)
#library(tidyr)
#library(Hmisc)
#teams <- read_csv("Out of the Park Developments/OOTP Baseball 19/saved_games/OOTPLeagueReborn.lg/import_export/general/teams.csv")
#pos <- data.frame("posnum" = c(1,2,3,4,5,6,7,8,9),"posval" = c("P","C","1B","2B","3B","SS","LF","CF","RF"))
#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
pas <- 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)
#select top 6 SP and top 4 RP for AL and NL
ALAS <- pas %>%
filter(gs!='0' & sub_league_id =='0') %>%
select(player_id, name, sprank, war) %>%
arrange(desc(sprank)) %>%
top_n(6,sprank) %>%
mutate(pos="SP") %>%
rename(rank = sprank)
ALAS <- pas %>%
filter(gs=='0' & wpa>'0' & sub_league_id =='0') %>%
select(player_id, name, rprank, war) %>%
arrange(desc(rprank)) %>%
top_n(4,rprank) %>%
mutate(pos="RP") %>%
rename(rank = rprank) %>%
bind_rows(ALAS, .)
NLAS <- pas %>%
filter(gs!='0' & sub_league_id =='1') %>%
select(player_id, name, sprank, war) %>%
arrange(desc(sprank)) %>%
top_n(6,sprank) %>%
mutate(pos="SP") %>%
rename(rank = sprank)
NLAS <- pas %>%
filter(gs=='0' & wpa>'0' & sub_league_id =='1') %>%
select(player_id, name, rprank, war) %>%
arrange(desc(rprank)) %>%
top_n(4,rprank) %>%
mutate(pos="RP") %>%
rename(rank = rprank) %>%
bind_rows(NLAS, .)
#Filter batter data
bas <- 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", "position")], 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(brank = wpa+2*war)
#select top 2 C and top 1 for every other position
ALAS <- bas %>%
filter(position=='2' & sub_league_id =='0') %>%
select(player_id, name, brank, war) %>%
arrange(desc(brank)) %>%
top_n(2,brank) %>%
mutate(pos="C") %>%
rename(rank = brank) %>%
bind_rows(ALAS, .)
ALAS <- bas %>%
filter(position=='3' & sub_league_id =='0') %>%
select(player_id, name, brank, war) %>%
arrange(desc(brank)) %>%
top_n(1,brank) %>%
mutate(pos="1B") %>%
rename(rank = brank) %>%
bind_rows(ALAS, .)
ALAS <- bas %>%
filter(position=='4' & sub_league_id =='0') %>%
select(player_id, name, brank, war) %>%
arrange(desc(brank)) %>%
top_n(1,brank) %>%
mutate(pos="2B") %>%
rename(rank = brank) %>%
bind_rows(ALAS, .)
ALAS <- bas %>%
filter(position=='5' & sub_league_id =='0') %>%
select(player_id, name, brank, war) %>%
arrange(desc(brank)) %>%
top_n(1,brank) %>%
mutate(pos="3B") %>%
rename(rank = brank) %>%
bind_rows(ALAS, .)
ALAS <- bas %>%
filter(position=='6' & sub_league_id =='0') %>%
select(player_id, name, brank, war) %>%
arrange(desc(brank)) %>%
top_n(1,brank) %>%
mutate(pos="SS") %>%
rename(rank = brank) %>%
bind_rows(ALAS, .)
ALAS <- bas %>%
filter(position=='7' & sub_league_id =='0') %>%
select(player_id, name, brank, war) %>%
arrange(desc(brank)) %>%
top_n(1,brank) %>%
mutate(pos="LF") %>%
rename(rank = brank) %>%
bind_rows(ALAS, .)
ALAS <- bas %>%
filter(position=='8' & sub_league_id =='0') %>%
select(player_id, name, brank, war) %>%
arrange(desc(brank)) %>%
top_n(1,brank) %>%
mutate(pos="CF") %>%
rename(rank = brank) %>%
bind_rows(ALAS, .)
ALAS <- bas %>%
filter(position=='9' & sub_league_id =='0') %>%
select(player_id, name, brank, war) %>%
arrange(desc(brank)) %>%
top_n(1,brank) %>%
mutate(pos="RF") %>%
rename(rank = brank) %>%
bind_rows(ALAS, .)
#filter out hitters already selected to all-star game
lasth <- anti_join(bas, ALAS, by=c("brank"= "rank"))
#select top 6 players not already selected
ALAS <- lasth %>%
filter(sub_league_id =='0') %>%
select(player_id, name, brank, war) %>%
arrange(desc(brank)) %>%
top_n(6,brank) %>%
mutate(pos="H") %>%
rename(rank = brank) %>%
bind_rows(ALAS, .)
#select top 2 C and top 1 for every other position
NLAS <- bas %>%
filter(position=='2' & sub_league_id =='1') %>%
select(player_id, name, brank, war) %>%
arrange(desc(brank)) %>%
top_n(2,brank) %>%
mutate(pos="C") %>%
rename(rank = brank) %>%
bind_rows(NLAS, .)
NLAS <- bas %>%
filter(position=='3' & sub_league_id =='1') %>%
select(player_id, name, brank, war) %>%
arrange(desc(brank)) %>%
top_n(1,brank) %>%
mutate(pos="1B") %>%
rename(rank = brank) %>%
bind_rows(NLAS, .)
NLAS <- bas %>%
filter(position=='4' & sub_league_id =='1') %>%
select(player_id, name, brank, war) %>%
arrange(desc(brank)) %>%
top_n(1,brank) %>%
mutate(pos="2B") %>%
rename(rank = brank) %>%
bind_rows(NLAS, .)
NLAS <- bas %>%
filter(position=='5' & sub_league_id =='1') %>%
select(player_id, name, brank, war) %>%
arrange(desc(brank)) %>%
top_n(1,brank) %>%
mutate(pos="3B") %>%
rename(rank = brank) %>%
bind_rows(NLAS, .)
NLAS <- bas %>%
filter(position=='6' & sub_league_id =='1') %>%
select(player_id, name, brank, war) %>%
arrange(desc(brank)) %>%
top_n(1,brank) %>%
mutate(pos="SS") %>%
rename(rank = brank) %>%
bind_rows(NLAS, .)
NLAS <- bas %>%
filter(position=='7' & sub_league_id =='1') %>%
select(player_id, name, brank, war) %>%
arrange(desc(brank)) %>%
top_n(1,brank) %>%
mutate(pos="LF") %>%
rename(rank = brank) %>%
bind_rows(NLAS, .)
NLAS <- bas %>%
filter(position=='8' & sub_league_id =='1') %>%
select(player_id, name, brank, war) %>%
arrange(desc(brank)) %>%
top_n(1,brank) %>%
mutate(pos="CF") %>%
rename(rank = brank) %>%
bind_rows(NLAS, .)
NLAS <- bas %>%
filter(position=='9' & sub_league_id =='1') %>%
select(player_id, name, brank, war) %>%
arrange(desc(brank)) %>%
top_n(1,brank) %>%
mutate(pos="RF") %>%
rename(rank = brank) %>%
bind_rows(NLAS, .)
#filter out hitters already selected to all-star game
lasth <- anti_join(bas, NLAS, by=c("brank"= "rank"))
#select top 6 players not already selected
NLAS <- lasth %>%
filter(sub_league_id =='1') %>%
select(player_id, name, brank, war) %>%
arrange(desc(brank)) %>%
top_n(6,brank) %>%
mutate(pos="H") %>%
rename(rank = brank) %>%
bind_rows(NLAS, .)
#create AL table for export to forum
ALASF <- ALAS %>%
select(player_id, name, war) %>%
merge(players[ , c("player_id", "position", "team_id")], by = "player_id") %>%
merge(pos[ , c("posnum","posval")], by.x='position', by.y = 'posnum') %>%
merge(teams[ , c("team_id", "abbr")], by = "team_id") %>%
select(c(6,4,5,7)) %>%
mutate(war = round(war, digits = 2)) %>%
rename(position = posval, team = abbr) %>%
arrange(desc(war))
#create NL table for export to forum
NLASF <- NLAS %>%
select(player_id, name, war) %>%
merge(players[ , c("player_id", "position", "team_id")], by = "player_id") %>%
merge(pos[ , c("posnum","posval")], by.x='position', by.y = 'posnum') %>%
merge(teams[ , c("team_id", "abbr")], by = "team_id") %>%
select(c(6,4,5,7)) %>%
mutate(war = round(war, digits = 2)) %>%
rename(position = posval, team = abbr) %>%
arrange(desc(war))
#Create tables to use for in-game voting
ALAS <- ALAS %>%
separate(name, c("first","last"), sep = " ") %>%
arrange(last) %>%
unite("name", c("first", "last"), sep = " ") %>%
select(name)
NLAS <- NLAS %>%
separate(name, c("first","last"), sep = " ") %>%
arrange(last) %>%
unite("name", c("first", "last"), sep = " ") %>%
select(name)
View(ALAS)
View(NLAS)
#send AL and NL tables to clipboard
#write_clip(ALASF)
#write_clip(NLASF)