similar <- function(p, number = 10) {
P <- C_totals |>
filter(playerID == p)
C_totals |>
mutate(
sim_score = 1000 -
floor(abs(G - P$G) / 20) -
floor(abs(AB - P$AB) / 75) -
floor(abs(R - P$R) / 10) -
floor(abs(H - P$H) / 15) -
floor(abs(X2B - P$X2B) / 5) -
floor(abs(X3B - P$X3B) / 4) -
floor(abs(HR - P$HR) / 2) -
floor(abs(RBI - P$RBI) / 10) -
floor(abs(BB - P$BB) / 25) -
floor(abs(SO - P$SO) / 150) -
floor(abs(SB - P$SB) / 20) -
floor(abs(AVG - P$AVG) / 0.001) -
floor(abs(SLG - P$SLG) / 0.002) -
abs(Value_POS - P$Value_POS)
) |>
arrange(desc(sim_score)) |>
slice_head(n = number)
}