James McCool commited on
Commit
0abd3e1
·
1 Parent(s): 92ae630

Refactor exposure calculation in app.py: update 'Exposure' field to store raw percentage values instead of formatted strings for improved data handling and consistency in player statistics.

Browse files
Files changed (1) hide show
  1. app.py +10 -8
app.py CHANGED
@@ -1223,7 +1223,7 @@ with tab2:
1223
  player_stats.append({
1224
  'Player': f"{player} (CPT)",
1225
  'Lineup Count': cpt_mask.sum(),
1226
- 'Exposure': f"{cpt_mask.sum() / len(display_frame) * 100:.2f}%",
1227
  'Avg Median': display_frame[cpt_mask]['median'].mean(),
1228
  'Avg Own': display_frame[cpt_mask]['Own'].mean(),
1229
  'Avg Dupes': display_frame[cpt_mask]['Dupes'].mean(),
@@ -1240,7 +1240,7 @@ with tab2:
1240
  player_stats.append({
1241
  'Player': f"{player} (FLEX)",
1242
  'Lineup Count': flex_mask.sum(),
1243
- 'Exposure': f"{flex_mask.sum() / len(display_frame) * 100:.2f}%",
1244
  'Avg Median': display_frame[flex_mask]['median'].mean(),
1245
  'Avg Own': display_frame[flex_mask]['Own'].mean(),
1246
  'Avg Dupes': display_frame[flex_mask]['Dupes'].mean(),
@@ -1258,7 +1258,7 @@ with tab2:
1258
  player_stats.append({
1259
  'Player': f"{player} (CPT)",
1260
  'Lineup Count': cpt_mask.sum(),
1261
- 'Exposure': f"{cpt_mask.sum() / len(display_frame) * 100:.2f}%",
1262
  'Avg Median': display_frame[cpt_mask]['median'].mean(),
1263
  'Avg Own': display_frame[cpt_mask]['Own'].mean(),
1264
  'Avg Dupes': display_frame[cpt_mask]['Dupes'].mean(),
@@ -1275,7 +1275,7 @@ with tab2:
1275
  player_stats.append({
1276
  'Player': f"{player} (FLEX)",
1277
  'Lineup Count': flex_mask.sum(),
1278
- 'Exposure': f"{flex_mask.sum() / len(display_frame) * 100:.2f}%",
1279
  'Avg Median': display_frame[flex_mask]['median'].mean(),
1280
  'Avg Own': display_frame[flex_mask]['Own'].mean(),
1281
  'Avg Dupes': display_frame[flex_mask]['Dupes'].mean(),
@@ -1293,7 +1293,7 @@ with tab2:
1293
  player_stats.append({
1294
  'Player': player,
1295
  'Lineup Count': player_mask.sum(),
1296
- 'Exposure': f"{player_mask.sum() / len(display_frame) * 100:.2f}%",
1297
  'Avg Median': display_frame[player_mask]['median'].mean(),
1298
  'Avg Own': display_frame[player_mask]['Own'].mean(),
1299
  'Avg Dupes': display_frame[player_mask]['Dupes'].mean(),
@@ -1313,7 +1313,8 @@ with tab2:
1313
  'Avg Own': '{:.2f}',
1314
  'Avg Dupes': '{:.2f}',
1315
  'Avg Finish %': '{:.2%}',
1316
- 'Avg Lineup Edge': '{:.2%}'
 
1317
  }),
1318
  height=400,
1319
  use_container_width=True
@@ -1329,7 +1330,7 @@ with tab2:
1329
  stack_stats.append({
1330
  'Stack': stack,
1331
  'Lineup Count': stack_mask.sum(),
1332
- 'Exposure': f"{stack_mask.sum() / len(display_frame) * 100:.2f}%",
1333
  'Avg Median': display_frame[stack_mask]['median'].mean(),
1334
  'Avg Own': display_frame[stack_mask]['Own'].mean(),
1335
  'Avg Dupes': display_frame[stack_mask]['Dupes'].mean(),
@@ -1347,7 +1348,8 @@ with tab2:
1347
  'Avg Own': '{:.2f}',
1348
  'Avg Dupes': '{:.2f}',
1349
  'Avg Finish %': '{:.2%}',
1350
- 'Avg Lineup Edge': '{:.2%}'
 
1351
  }),
1352
  height=400,
1353
  use_container_width=True
 
1223
  player_stats.append({
1224
  'Player': f"{player} (CPT)",
1225
  'Lineup Count': cpt_mask.sum(),
1226
+ 'Exposure': cpt_mask.sum() / len(display_frame) * 100,
1227
  'Avg Median': display_frame[cpt_mask]['median'].mean(),
1228
  'Avg Own': display_frame[cpt_mask]['Own'].mean(),
1229
  'Avg Dupes': display_frame[cpt_mask]['Dupes'].mean(),
 
1240
  player_stats.append({
1241
  'Player': f"{player} (FLEX)",
1242
  'Lineup Count': flex_mask.sum(),
1243
+ 'Exposure': flex_mask.sum() / len(display_frame) * 100,
1244
  'Avg Median': display_frame[flex_mask]['median'].mean(),
1245
  'Avg Own': display_frame[flex_mask]['Own'].mean(),
1246
  'Avg Dupes': display_frame[flex_mask]['Dupes'].mean(),
 
1258
  player_stats.append({
1259
  'Player': f"{player} (CPT)",
1260
  'Lineup Count': cpt_mask.sum(),
1261
+ 'Exposure': cpt_mask.sum() / len(display_frame) * 100,
1262
  'Avg Median': display_frame[cpt_mask]['median'].mean(),
1263
  'Avg Own': display_frame[cpt_mask]['Own'].mean(),
1264
  'Avg Dupes': display_frame[cpt_mask]['Dupes'].mean(),
 
1275
  player_stats.append({
1276
  'Player': f"{player} (FLEX)",
1277
  'Lineup Count': flex_mask.sum(),
1278
+ 'Exposure': flex_mask.sum() / len(display_frame) * 100,
1279
  'Avg Median': display_frame[flex_mask]['median'].mean(),
1280
  'Avg Own': display_frame[flex_mask]['Own'].mean(),
1281
  'Avg Dupes': display_frame[flex_mask]['Dupes'].mean(),
 
1293
  player_stats.append({
1294
  'Player': player,
1295
  'Lineup Count': player_mask.sum(),
1296
+ 'Exposure': player_mask.sum() / len(display_frame) * 100,
1297
  'Avg Median': display_frame[player_mask]['median'].mean(),
1298
  'Avg Own': display_frame[player_mask]['Own'].mean(),
1299
  'Avg Dupes': display_frame[player_mask]['Dupes'].mean(),
 
1313
  'Avg Own': '{:.2f}',
1314
  'Avg Dupes': '{:.2f}',
1315
  'Avg Finish %': '{:.2%}',
1316
+ 'Avg Lineup Edge': '{:.2%}',
1317
+ 'Exposure': '{:.2%}'
1318
  }),
1319
  height=400,
1320
  use_container_width=True
 
1330
  stack_stats.append({
1331
  'Stack': stack,
1332
  'Lineup Count': stack_mask.sum(),
1333
+ 'Exposure': stack_mask.sum() / len(display_frame) * 100,
1334
  'Avg Median': display_frame[stack_mask]['median'].mean(),
1335
  'Avg Own': display_frame[stack_mask]['Own'].mean(),
1336
  'Avg Dupes': display_frame[stack_mask]['Dupes'].mean(),
 
1348
  'Avg Own': '{:.2f}',
1349
  'Avg Dupes': '{:.2f}',
1350
  'Avg Finish %': '{:.2%}',
1351
+ 'Avg Lineup Edge': '{:.2%}',
1352
+ 'Exposure': '{:.2%}'
1353
  }),
1354
  height=400,
1355
  use_container_width=True