Skip to contents

Build a wide, one-row-per-player-per-team crosswalk linking ESPN and Fox Sports (Bifrost) MBB player identities for a season. ESPN is the anchor source; Fox is matched by normalized name (exact first, then Jaro-Winkler fuzzy with jersey tiebreaker) within each team block. Yahoo columns are NA placeholders. KenPom and Torvik have no per-player data for MBB, so neither source is joined.

Usage

mbb_player_crosswalk(season = most_recent_mbb_season(), min_confidence = 0.92)

Arguments

season

Season year (4-digit, e.g. 2025). Defaults to most_recent_mbb_season().

min_confidence

Jaro-Winkler similarity floor for fuzzy matches (default 0.92).

Value

A hoopR_data tibble, one row per player per team (ESPN-anchored):

col_nametypesdescription
seasonintegerSeason year.
espn_team_idintegerESPN team id (canonical key).
team_abbreviationcharacterESPN team abbreviation.
player_namecharacterNormalized player name (matching key).
espn_athlete_idcharacterESPN athlete id.
espn_full_namecharacterESPN full name.
espn_jerseycharacterESPN jersey number.
espn_positioncharacterESPN position abbreviation.
fox_athlete_idcharacterFox athlete id (NA if unmatched).
fox_playercharacterFox player name (NA if unmatched).
fox_jerseycharacterFox jersey number (NA if unmatched).
fox_position_groupcharacterFox position group label (NA if unmatched).
yahoo_player_idcharacterYahoo player id (NA placeholder).
yahoo_player_namecharacterYahoo player name (NA placeholder).
match_methodcharacter"exact_name"/"fuzzy_jw"/"unmatched".
match_confidencenumericJaro-Winkler score or 1 for exact (NA if none).
match_keyscharacterNA (reserved for future use).

Examples

# \donttest{
  try(mbb_player_crosswalk(season = 2025))
#>  2026-08-06 04:01:31.536096: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:32.257157: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:32.828906: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:33.172744: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:33.316899: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:33.571706: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:33.924615: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:34.221744: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:34.357787: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:34.532202: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:34.891292: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:35.050594: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:35.191335: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:35.470943: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:35.608909: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:35.79435: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:36.089523: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:36.235908: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:36.587716: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:36.879058: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:37.025932: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:37.163348: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:37.478028: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:37.835549: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:38.178152: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:38.205704: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:38.368646: no Fox CBK teams data available!
#>  Error: The API returned an error
#>  2026-08-06 04:01:38.718999: no Fox CBK teams data available!
#>  Error: The API returned an error
#> ── MBB player crosswalk (ESPN / Fox) ──────────────────────────── hoopR 3.1.0 ──
#>  Data updated: 2026-08-06 04:03:43 UTC
#> # A tibble: 5,442 × 17
#>    season espn_team_id team_abbreviation player_name      espn_athlete_id
#>     <int>        <int> <chr>             <chr>            <chr>          
#>  1   2025         2000 ACU               christian alston 5241312        
#>  2   2025         2000 ACU               isaiah carrillo  5314819        
#>  3   2025         2000 ACU               isaac dye        5314820        
#>  4   2025         2000 ACU               mashy hill       5177705        
#>  5   2025         2000 ACU               cade hornecker   5107885        
#>  6   2025         2000 ACU               bradyn hubbard   5241314        
#>  7   2025         2000 ACU               tylan lewis      5314817        
#>  8   2025         2000 ACU               cbo newton       5177575        
#>  9   2025         2000 ACU               yaniel rivera    5177702        
#> 10   2025         2000 ACU               joseph scott     5314818        
#> # ℹ 5,432 more rows
#> # ℹ 12 more variables: espn_full_name <chr>, espn_jersey <chr>,
#> #   espn_position <chr>, fox_athlete_id <chr>, fox_player <chr>,
#> #   fox_jersey <chr>, fox_position_group <chr>, yahoo_player_id <chr>,
#> #   yahoo_player_name <chr>, match_method <chr>, match_confidence <dbl>,
#> #   match_keys <chr>
# }