019: Nothing but NET

gt tables
Published

March 1, 2023

Data wrangling

Code
# load december
dec <- read_csv("dec_28_net.csv") %>%
  select(Team, Conference, NET) %>%
  rename(dec_28 = NET)

# load today
mar <- read_csv("march_1_net.csv") %>%
  select(Team, NET) %>%
  rename(march_1 = NET)

# combine the data
net_comp <- merge(dec, mar, by = "Team")

# filter by conferences
confs <-
  c("Big 12",
    "Big Ten",
    "SEC",
    "Big East",
    "Pac-12",
    "Mountain West",
    "ACC")

conf_comp <- net_comp %>%
  filter(Conference %in% confs) %>%
  mutate(delta = dec_28 - march_1) %>%
  arrange(delta)

# find the median change
med_change <- conf_comp %>%
  group_by(Conference) %>%
  summarize(med_change = median(delta)) %>%
  arrange(med_change)

# now let's do kenpom
dec_kp <- kp_pomeroy_archive_ratings(date = "2022-12-28") %>%
  select(team, conf, adj_em_rk) %>%
  rename(dec_rank = adj_em_rk)

mar_kp <- kp_pomeroy_ratings(min_year = 2023, max_year = 2023)  %>%
  select(team, rk) %>%
  rename(march_rank = rk)

# combine the data
kp_comp <- merge(dec_kp, mar_kp, by = "team")

# filter by conferences
confs_kp <- c("B12", "B10", "SEC", "BE", "P12", "MWC", "ACC")

kp_conf_comp <- kp_comp %>%
  filter(conf %in% confs_kp) %>%
  mutate(delta = dec_rank - march_rank) %>%
  arrange(delta)

# find the median change
kp_med_change <- kp_conf_comp %>%
  group_by(conf) %>%
  summarize(med_change = median(delta)) %>%
  arrange(med_change) %>%
  mutate(
    conf = case_match(
      conf,
      "B12" ~ "Big 12",
      "B10" ~ "Big Ten",
      "BE" ~ "Big East",
      "P12" ~ "Pac-12",
      "MWC" ~ "Mountain West",
      conf ~ conf
    )
  ) %>%
  rename(Conference = conf, kp_med_change = med_change)

# combine those two changes
net_kp_comp <- merge(med_change, kp_med_change, by = "Conference")

# try to combine the two
kp_c <- kp_conf_comp %>%
  rename(Team = team, kp_delta = delta) %>%
  select(Team, march_rank, dec_rank, kp_delta)

net_c <- conf_comp %>%
  select(Team, Conference, dec_28, march_1, delta) %>%
  rename(net_delta = delta) %>%
  mutate(
    Team = case_match(
      Team,
      "UConn" ~ "Connecticut",
      "N.C. State" ~ "NC State",
      "Miami (FL)" ~ "Miami FL",
      "Ole Miss" ~ "Mississippi",
      "NC State" ~ "N.C. State",
      "St. John's (NY)" ~ "St. John's",
      "Southern California" ~ "USC",
      Team ~ Team
    )
  )

# combine the two tables 
mega_comp <- merge(net_c, kp_c, by = "Team")

Make gt table

Code
comp_table <- net_kp_comp %>%
  arrange(kp_med_change) %>%
  gt() %>%
  cols_label(# rename columns
    med_change = "NET +/-",
    kp_med_change = "kenpom +/-") %>%
  fmt(
    columns = c(med_change, kp_med_change),
    fns = function(x) {
      ifelse(x > 0, paste0("+", x), x)
    }
  ) %>%
  fmt_number(
    columns = c(med_change, kp_med_change),
    decimals = 1,
    use_seps = FALSE
  ) %>%
  gt_theme_nytimes() %>%
  tab_header(title = "Conference median change in NET and kenpom rating from December 28 to March 1",
             subtitle = "Negative number means worse rating and positive number means better rating.") %>%
  tab_source_note(source_note = "@dadgumboxscores | March 1, 2023 | data via ncaa + kenpom") %>%
  tab_options (source_notes.font.size = px(8),
               table.font.size = px(10),)

gtsave_extra(comp_table,
             "comp_table.png",
             vwidth = 275,
             vheight = 275)

comp_table
Conference median change in NET and kenpom rating from December 28 to March 1
Negative number means worse rating and positive number means better rating.
Conference NET +/- kenpom +/-
ACC 12.0 −25.0
SEC 0.0 −10.5
Big Ten −2.0 −6.0
Big East 9.0 −3.0
Pac-12 2.5 −1.0
Big 12 1.5 0.0
Mountain West 20.0 9.0
@dadgumboxscores | March 1, 2023 | data via ncaa + kenpom
Code
# make a big GT table of all of it
mega_table <- mega_comp %>%
  select(Team, Conference, dec_28, march_1, net_delta, dec_rank, march_rank, kp_delta) %>% 
  arrange(Conference) %>%
  gt() %>%
  cols_label(# rename columns
    dec_28 = "Dec 28",
    march_1 = "March 1",
    dec_rank = "Dec 28",
    march_rank = "March 1",
    net_delta = "+/-",
    kp_delta = "+/-",) %>%
  fmt(
    columns = c(net_delta, kp_delta),
    fns = function(x) {
      ifelse(x > 0, paste0("+", x), x)
    }
  ) %>%
   tab_spanner(label = "NET",
              columns = c(dec_28, march_1, net_delta)) %>%
  tab_spanner(label = "kenpom",
              columns = c(dec_rank, march_rank, kp_delta)) %>%
  gt_theme_dot_matrix() %>%
  tab_header(title = "NET and kenpom rating changes between December 28 and today (March 1)",
             subtitle = "Negative number means worse rating and positive number means better rating.") %>%
  tab_source_note(source_note = "@dadgumboxscores | March 1, 2023 | data via ncaa + kenpom") %>%
  tab_options (
    source_notes.font.size = px(10),
    row.striping.background_color = '#ffffed',
    table.font.size = px(10),
    column_labels.text_transform = 'capitalize'
  )

gtsave_extra(mega_table,
             "mega_table.png",
             vwidth = 650,
             vheight = 650)

mega_table
NET and kenpom rating changes between December 28 and today (March 1)
Negative number means worse rating and positive number means better rating.
Team Conference NET kenpom
Dec 28 March 1 +/- Dec 28 March 1 +/-
Boston College ACC 227 158 +69 164 166 -2
Clemson ACC 77 62 +15 61 69 -8
Duke ACC 17 22 -5 16 32 -16
Florida St. ACC 248 218 +30 149 206 -57
Georgia Tech ACC 140 189 -49 119 173 -54
Louisville ACC 343 310 +33 256 284 -28
Miami FL ACC 46 34 +12 40 37 +3
N.C. State ACC 55 42 +13 52 51 +1
North Carolina ACC 23 45 -22 20 45 -25
Notre Dame ACC 168 188 -20 103 169 -66
Pittsburgh ACC 69 53 +16 69 55 +14
Syracuse ACC 152 129 +23 87 125 -38
Virginia ACC 19 29 -10 13 38 -25
Virginia Tech ACC 27 71 -44 29 76 -47
Wake Forest ACC 83 86 -3 83 87 -4
Baylor Big 12 18 11 +7 15 13 +2
Iowa St. Big 12 33 27 +6 46 26 +20
Kansas Big 12 5 6 -1 5 7 -2
Kansas St. Big 12 31 17 +14 51 20 +31
Oklahoma Big 12 51 65 -14 33 52 -19
Oklahoma St. Big 12 48 47 +1 30 44 -14
TCU Big 12 49 21 +28 38 22 +16
Texas Big 12 9 10 -1 6 9 -3
Texas Tech Big 12 52 50 +2 32 49 -17
West Virginia Big 12 10 23 -13 21 19 +2
Butler Big East 66 128 -62 79 123 -44
Connecticut Big East 2 8 -6 2 5 -3
Creighton Big East 35 15 +20 24 14 +10
DePaul Big East 176 166 +10 122 145 -23
Georgetown Big East 230 225 +5 168 214 -46
Marquette Big East 29 13 +16 25 11 +14
Providence Big East 76 38 +38 63 28 +35
Seton Hall Big East 93 84 +9 68 78 -10
St. John's Big East 96 98 -2 57 90 -33
Villanova Big East 89 76 +13 53 56 -3
Xavier Big East 26 25 +1 28 18 +10
Illinois Big Ten 41 36 +5 31 36 -5
Indiana Big Ten 21 28 -7 19 27 -8
Iowa Big Ten 58 33 +25 37 34 +3
Maryland Big Ten 24 20 +4 22 16 +6
Michigan Big Ten 81 55 +26 48 42 +6
Michigan St. Big Ten 67 31 +36 44 25 +19
Minnesota Big Ten 249 239 +10 196 224 -28
Nebraska Big Ten 78 94 -16 89 96 -7
Northwestern Big Ten 38 41 -3 45 48 -3
Ohio St. Big Ten 15 64 -49 14 65 -51
Penn St. Big Ten 50 60 -10 34 50 -16
Purdue Big Ten 4 5 -1 7 6 +1
Rutgers Big Ten 28 32 -4 23 31 -8
Wisconsin Big Ten 47 74 -27 35 68 -33
Air Force Mountain West 153 152 +1 171 146 +25
Boise St. Mountain West 60 26 +34 60 24 +36
Colorado St. Mountain West 91 116 -25 92 111 -19
Fresno St. Mountain West 200 163 +37 139 149 -10
Nevada Mountain West 62 35 +27 88 40 +48
New Mexico Mountain West 12 48 -36 65 46 +19
San Diego St. Mountain West 36 16 +20 26 17 +9
San Jose St. Mountain West 117 97 +20 151 94 +57
UNLV Mountain West 61 90 -29 75 86 -11
Utah St. Mountain West 22 30 -8 39 35 +4
Wyoming Mountain West 220 173 +47 124 156 -32
Arizona Pac-12 8 12 -4 8 12 -4
Arizona St. Pac-12 42 61 -19 55 63 -8
California Pac-12 318 304 +14 241 262 -21
Colorado Pac-12 59 75 -16 56 58 -2
Oregon Pac-12 71 52 +19 47 47 0
Oregon St. Pac-12 221 213 +8 219 197 +22
Stanford Pac-12 100 107 -7 66 93 -27
UCLA Pac-12 6 4 +2 4 2 +2
USC Pac-12 86 46 +40 67 33 +34
Utah Pac-12 44 69 -25 49 60 -11
Washington Pac-12 116 113 +3 100 100 0
Washington St. Pac-12 92 77 +15 77 59 +18
Alabama SEC 7 2 +5 12 3 +9
Arkansas SEC 14 14 0 9 15 -6
Auburn SEC 30 37 -7 17 29 -12
Florida SEC 64 59 +5 50 62 -12
Georgia SEC 132 150 -18 97 144 -47
Kentucky SEC 40 19 +21 10 21 -11
LSU SEC 75 154 -79 78 150 -72
Mississippi SEC 88 131 -43 73 116 -43
Mississippi St. SEC 39 44 -5 36 43 -7
Missouri SEC 32 49 -17 43 53 -10
South Carolina SEC 274 234 +40 192 219 -27
Tennessee SEC 3 3 0 3 4 -1
Texas A&M SEC 102 24 +78 72 23 +49
Vanderbilt SEC 147 85 +62 106 84 +22
@dadgumboxscores | March 1, 2023 | data via ncaa + kenpom