{"sport":"nba","slug":"devin-cannady","bio":{"fullName":"Devin Cannady","position":"G","team":"ORL","heightInches":74,"weightLbs":183,"birthDate":"1996-05-21","college":"Princeton","headshotUrl":"https://a.espncdn.com/i/headshots/nba/players/full/3906977.png","rookieSeason":2021,"lastSeason":2022,"status":"RET","externalIds":{"espn":"3906977"}},"draft":null,"statTables":[{"id":"totals","label":"Totals","columns":[{"key":"g"},{"key":"gs"},{"key":"mp"},{"key":"fg"},{"key":"fga"},{"key":"fg_pct"},{"key":"fg3"},{"key":"fg3a"},{"key":"fg3_pct"},{"key":"ft"},{"key":"fta"},{"key":"ft_pct"},{"key":"orb"},{"key":"drb"},{"key":"trb"},{"key":"ast"},{"key":"stl"},{"key":"blk"},{"key":"tov"},{"key":"pf"},{"key":"pts"}],"rows":[{"season":2021,"seasonType":"REG","team":"ORL","gamesPlayed":8,"values":{"g":8,"gs":0,"mp":50,"fg":4,"fga":17,"fg_pct":0.235,"fg3":3,"fg3a":11,"fg3_pct":0.273,"ft":6,"fta":7,"ft_pct":0.857,"orb":0,"drb":2,"trb":2,"ast":1,"stl":3,"blk":1,"tov":2,"pf":7,"pts":17},"rowScope":"team"},{"season":2022,"seasonType":"REG","team":"ORL","gamesPlayed":5,"values":{"g":5,"gs":0,"mp":144,"fg":15,"fga":44,"fg_pct":0.341,"fg3":15,"fg3a":37,"fg3_pct":0.405,"ft":5,"fta":7,"ft_pct":0.714,"orb":1,"drb":5,"trb":6,"ast":10,"stl":5,"blk":3,"tov":5,"pf":9,"pts":50},"rowScope":"team"}],"careerTotals":{"REG":{"g":13,"gs":0,"mp":194,"fg":19,"fga":61,"fg_pct":0.311,"fg3":18,"fg3a":48,"fg3_pct":0.375,"ft":11,"fta":14,"ft_pct":0.786,"orb":1,"drb":7,"trb":8,"ast":11,"stl":8,"blk":4,"tov":7,"pf":16,"pts":67}}},{"id":"per-game","label":"Per Game","columns":[{"key":"mpg"},{"key":"ppg"},{"key":"rpg"},{"key":"apg"},{"key":"spg"},{"key":"bpg"},{"key":"topg"},{"key":"fg_pct"},{"key":"fg3_pct"},{"key":"ft_pct"}],"rows":[{"season":2021,"seasonType":"REG","team":"ORL","gamesPlayed":8,"values":{"mpg":6.3,"ppg":2.1,"rpg":0.3,"apg":0.1,"spg":0.4,"bpg":0.1,"topg":0.3,"fg_pct":0.235,"fg3_pct":0.273,"ft_pct":0.857},"rowScope":"team"},{"season":2022,"seasonType":"REG","team":"ORL","gamesPlayed":5,"values":{"mpg":28.8,"ppg":10,"rpg":1.2,"apg":2,"spg":1,"bpg":0.6,"topg":1,"fg_pct":0.341,"fg3_pct":0.405,"ft_pct":0.714},"rowScope":"team"}],"careerTotals":{"REG":{"mpg":14.9,"ppg":5.2,"rpg":0.6,"apg":0.8,"spg":0.6,"bpg":0.3,"topg":0.5,"fg_pct":0.311,"fg3_pct":0.375,"ft_pct":0.786}}},{"id":"per-36","label":"Per 36 Minutes","columns":[{"key":"pts36"},{"key":"trb36"},{"key":"ast36"},{"key":"stl36"},{"key":"blk36"},{"key":"tov36"},{"key":"fg_pct"},{"key":"fg3_pct"},{"key":"ft_pct"}],"rows":[{"season":2021,"seasonType":"REG","team":"ORL","gamesPlayed":8,"values":{"pts36":12.2,"trb36":1.4,"ast36":0.7,"stl36":2.2,"blk36":0.7,"tov36":1.4,"fg_pct":0.235,"fg3_pct":0.273,"ft_pct":0.857},"rowScope":"team"},{"season":2022,"seasonType":"REG","team":"ORL","gamesPlayed":5,"values":{"pts36":12.5,"trb36":1.5,"ast36":2.5,"stl36":1.3,"blk36":0.8,"tov36":1.3,"fg_pct":0.341,"fg3_pct":0.405,"ft_pct":0.714},"rowScope":"team"}],"careerTotals":{"REG":{"pts36":12.4,"trb36":1.5,"ast36":2,"stl36":1.5,"blk36":0.7,"tov36":1.3,"fg_pct":0.311,"fg3_pct":0.375,"ft_pct":0.786}}},{"id":"advanced","label":"Advanced","columns":[{"key":"ts_pct"},{"key":"efg_pct"},{"key":"usg_pct"},{"key":"per"},{"key":"ws"},{"key":"ws48"},{"key":"ortg"},{"key":"drtg"},{"key":"ewa"}],"rows":[{"season":2021,"seasonType":"REG","team":"ORL","gamesPlayed":8,"values":{"ts_pct":0.423,"efg_pct":0.324,"usg_pct":19.2,"per":4,"ws":0,"ws48":-0.042,"ortg":86.6,"drtg":114,"ewa":-0.2},"rowScope":"team"},{"season":2022,"seasonType":"REG","team":"ORL","gamesPlayed":5,"values":{"ts_pct":0.531,"efg_pct":0.511,"usg_pct":15.8,"per":8.7,"ws":0.1,"ws48":0.033,"ortg":103.8,"drtg":115.9,"ewa":-0.2},"rowScope":"team"}],"careerTotals":{"REG":{"ts_pct":null,"efg_pct":null,"usg_pct":null,"per":null,"ws":0.1,"ws48":null,"ortg":null,"drtg":null,"ewa":null}},"advancedMeta":{"method":"computed in-house from hoopR ESPN box-score aggregates (sportsdataverse, CC-BY 4.0)","formulas":{"ts_pct":"PTS / (2 * (FGA + 0.44*FTA))","efg_pct":"(FG + 0.5*3P) / FGA","usg_pct":"standard usage estimate vs team plays while on floor","per":"Hollinger uPER + pace adjustment, normalized to MP-weighted league mean 15.0 per season+seasonType","ortg_drtg":"Dean Oliver individual ratings, box-score approximation (Basketball on Paper)","ws":"marginal offense/defense win shares over Oliver points-produced and defensive rating","ewa":"((PER - 11.5) * MP / 67) / 30 wins — flat replacement level (positional PRL not used: ESPN position data unreliable pre-2010)"},"caveats":["possessions are box-score estimates, not play-by-play counts","team/opponent totals are summed from player box lines paired per game (the hoopR team box release's turnover columns are unreliable per-season), so deadball TEAM turnovers are excluded from possession estimates","traded players are attributed to their modal (most-games) team's context for team-dependent metrics","play-in games (ESPN season_type 5) are excluded from player and team aggregates","DRtg is a box-score approximation of individual defense and inherits heavy team context","coverage starts with the 2001-02 season (hoopR ESPN archive floor)","career advanced values are null except WS (the only cleanly summable metric) — no fake career rates","split-season TOT rows sum only additive WS/EWA; stint-context rates stay null while exact team rows retain them"]}},{"id":"college-pergame","label":"College Per Game","columns":[{"key":"gp"},{"key":"gs"},{"key":"mpg"},{"key":"fg_pct"},{"key":"fg3_pct"},{"key":"ft_pct"},{"key":"rpg"},{"key":"apg"},{"key":"spg"},{"key":"bpg"},{"key":"ppg"}],"rows":[{"season":2016,"seasonType":"COLLEGE","team":"Princeton","gamesPlayed":29,"values":{"gp":29,"gs":0,"mpg":22,"fg_pct":0.485,"fg3_pct":0.456,"ft_pct":0.889,"rpg":2.5,"apg":1.2,"spg":1.1,"bpg":0.2,"ppg":11.6},"rowScope":"team"},{"season":2017,"seasonType":"COLLEGE","team":"Princeton","gamesPlayed":30,"values":{"gp":30,"gs":24,"mpg":31.5,"fg_pct":0.416,"fg3_pct":0.409,"ft_pct":0.938,"rpg":3.6,"apg":1.9,"spg":1.1,"bpg":0.3,"ppg":13.4},"rowScope":"team"},{"season":2018,"seasonType":"COLLEGE","team":"Princeton","gamesPlayed":29,"values":{"gp":29,"gs":28,"mpg":36.7,"fg_pct":0.452,"fg3_pct":0.394,"ft_pct":0.884,"rpg":5.4,"apg":1.7,"spg":0.8,"bpg":0.1,"ppg":16.7},"rowScope":"team"},{"season":2019,"seasonType":"COLLEGE","team":"Princeton","gamesPlayed":16,"values":{"gp":16,"gs":15,"mpg":36.8,"fg_pct":0.416,"fg3_pct":0.36,"ft_pct":0.869,"rpg":5.8,"apg":1.7,"spg":1.6,"bpg":0.2,"ppg":18.2},"rowScope":"team"}],"careerTotals":{"COLLEGE":{"gp":104,"gs":67,"mpg":31.1,"fg_pct":0.441,"fg3_pct":0.403,"ft_pct":0.896,"rpg":4.1,"apg":1.6,"spg":1.1,"bpg":0.2,"ppg":14.6}}}],"dataSources":["sportsdataverse:hoopR espn_nba_player_boxscores (CC-BY 4.0)","sportsdataverse:hoopR espn_nba_rosters (CC-BY 4.0)","sportsdataverse:hoopR espn_nba_draft (CC-BY 4.0)","wikipedia:nba-career-stats (CC-BY-SA, facts-only)","wikipedia:nba-bio (CC-BY-SA, facts-only)"],"generatedAt":"2026-07-31T19:13:23.943Z"}