James McCool
commited on
Commit
·
b42fc89
1
Parent(s):
67223dc
Refactor salary, median, and ownership calculations in app.py to use parsed_frame instead of session state, improving data handling consistency and clarity in exposure evaluations.
Browse files
app.py
CHANGED
@@ -1349,50 +1349,79 @@ with tab2:
|
|
1349 |
if type_var == 'Classic':
|
1350 |
if sport_var == 'CS2' or sport_var == 'LOL':
|
1351 |
# Calculate salary (CPT uses cpt_salary_map, others use salary_map)
|
1352 |
-
|
1353 |
lambda row: st.session_state['map_dict']['cpt_salary_map'].get(row.iloc[0], 0) +
|
1354 |
sum(st.session_state['map_dict']['salary_map'].get(player, 0) for player in row.iloc[1:]),
|
1355 |
axis=1
|
1356 |
)
|
1357 |
|
1358 |
# Calculate median (CPT uses cpt_proj_map, others use proj_map)
|
1359 |
-
|
1360 |
lambda row: st.session_state['map_dict']['cpt_proj_map'].get(row.iloc[0], 0) +
|
1361 |
sum(st.session_state['map_dict']['proj_map'].get(player, 0) for player in row.iloc[1:]),
|
1362 |
axis=1
|
1363 |
)
|
1364 |
|
1365 |
# Calculate ownership (CPT uses cpt_own_map, others use own_map)
|
1366 |
-
|
1367 |
lambda row: st.session_state['map_dict']['cpt_own_map'].get(row.iloc[0], 0) +
|
1368 |
sum(st.session_state['map_dict']['own_map'].get(player, 0) for player in row.iloc[1:]),
|
1369 |
axis=1
|
1370 |
)
|
1371 |
|
1372 |
elif sport_var != 'CS2' and sport_var != 'LOL':
|
1373 |
-
|
1374 |
-
|
1375 |
-
|
1376 |
if 'stack_dict' in st.session_state:
|
1377 |
-
st.session_state['
|
1378 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1379 |
elif type_var == 'Showdown':
|
1380 |
# Calculate salary (CPT uses cpt_salary_map, others use salary_map)
|
1381 |
-
|
1382 |
lambda row: st.session_state['map_dict']['cpt_salary_map'].get(row.iloc[0], 0) +
|
1383 |
sum(st.session_state['map_dict']['salary_map'].get(player, 0) for player in row.iloc[1:]),
|
1384 |
axis=1
|
1385 |
)
|
1386 |
|
1387 |
# Calculate median (CPT uses cpt_proj_map, others use proj_map)
|
1388 |
-
|
1389 |
lambda row: st.session_state['map_dict']['cpt_proj_map'].get(row.iloc[0], 0) +
|
1390 |
sum(st.session_state['map_dict']['proj_map'].get(player, 0) for player in row.iloc[1:]),
|
1391 |
axis=1
|
1392 |
)
|
1393 |
|
1394 |
# Calculate ownership (CPT uses cpt_own_map, others use own_map)
|
1395 |
-
|
1396 |
lambda row: st.session_state['map_dict']['cpt_own_map'].get(row.iloc[0], 0) +
|
1397 |
sum(st.session_state['map_dict']['own_map'].get(player, 0) for player in row.iloc[1:]),
|
1398 |
axis=1
|
@@ -1412,50 +1441,79 @@ with tab2:
|
|
1412 |
if type_var == 'Classic':
|
1413 |
if sport_var == 'CS2' or sport_var == 'LOL':
|
1414 |
# Calculate salary (CPT uses cpt_salary_map, others use salary_map)
|
1415 |
-
|
1416 |
lambda row: st.session_state['map_dict']['cpt_salary_map'].get(row.iloc[0], 0) +
|
1417 |
sum(st.session_state['map_dict']['salary_map'].get(player, 0) for player in row.iloc[1:]),
|
1418 |
axis=1
|
1419 |
)
|
1420 |
|
1421 |
# Calculate median (CPT uses cpt_proj_map, others use proj_map)
|
1422 |
-
|
1423 |
lambda row: st.session_state['map_dict']['cpt_proj_map'].get(row.iloc[0], 0) +
|
1424 |
sum(st.session_state['map_dict']['proj_map'].get(player, 0) for player in row.iloc[1:]),
|
1425 |
axis=1
|
1426 |
)
|
1427 |
|
1428 |
# Calculate ownership (CPT uses cpt_own_map, others use own_map)
|
1429 |
-
|
1430 |
lambda row: st.session_state['map_dict']['cpt_own_map'].get(row.iloc[0], 0) +
|
1431 |
sum(st.session_state['map_dict']['own_map'].get(player, 0) for player in row.iloc[1:]),
|
1432 |
axis=1
|
1433 |
)
|
1434 |
|
1435 |
elif sport_var != 'CS2' and sport_var != 'LOL':
|
1436 |
-
|
1437 |
-
|
1438 |
-
|
1439 |
if 'stack_dict' in st.session_state:
|
1440 |
-
st.session_state['
|
1441 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1442 |
elif type_var == 'Showdown':
|
1443 |
# Calculate salary (CPT uses cpt_salary_map, others use salary_map)
|
1444 |
-
|
1445 |
lambda row: st.session_state['map_dict']['cpt_salary_map'].get(row.iloc[0], 0) +
|
1446 |
sum(st.session_state['map_dict']['salary_map'].get(player, 0) for player in row.iloc[1:]),
|
1447 |
axis=1
|
1448 |
)
|
1449 |
|
1450 |
# Calculate median (CPT uses cpt_proj_map, others use proj_map)
|
1451 |
-
|
1452 |
lambda row: st.session_state['map_dict']['cpt_proj_map'].get(row.iloc[0], 0) +
|
1453 |
sum(st.session_state['map_dict']['proj_map'].get(player, 0) for player in row.iloc[1:]),
|
1454 |
axis=1
|
1455 |
)
|
1456 |
|
1457 |
# Calculate ownership (CPT uses cpt_own_map, others use own_map)
|
1458 |
-
|
1459 |
lambda row: st.session_state['map_dict']['cpt_own_map'].get(row.iloc[0], 0) +
|
1460 |
sum(st.session_state['map_dict']['own_map'].get(player, 0) for player in row.iloc[1:]),
|
1461 |
axis=1
|
|
|
1349 |
if type_var == 'Classic':
|
1350 |
if sport_var == 'CS2' or sport_var == 'LOL':
|
1351 |
# Calculate salary (CPT uses cpt_salary_map, others use salary_map)
|
1352 |
+
parsed_frame['salary'] = parsed_frame.apply(
|
1353 |
lambda row: st.session_state['map_dict']['cpt_salary_map'].get(row.iloc[0], 0) +
|
1354 |
sum(st.session_state['map_dict']['salary_map'].get(player, 0) for player in row.iloc[1:]),
|
1355 |
axis=1
|
1356 |
)
|
1357 |
|
1358 |
# Calculate median (CPT uses cpt_proj_map, others use proj_map)
|
1359 |
+
parsed_frame['median'] = parsed_frame.apply(
|
1360 |
lambda row: st.session_state['map_dict']['cpt_proj_map'].get(row.iloc[0], 0) +
|
1361 |
sum(st.session_state['map_dict']['proj_map'].get(player, 0) for player in row.iloc[1:]),
|
1362 |
axis=1
|
1363 |
)
|
1364 |
|
1365 |
# Calculate ownership (CPT uses cpt_own_map, others use own_map)
|
1366 |
+
parsed_frame['Own'] = parsed_frame.apply(
|
1367 |
lambda row: st.session_state['map_dict']['cpt_own_map'].get(row.iloc[0], 0) +
|
1368 |
sum(st.session_state['map_dict']['own_map'].get(player, 0) for player in row.iloc[1:]),
|
1369 |
axis=1
|
1370 |
)
|
1371 |
|
1372 |
elif sport_var != 'CS2' and sport_var != 'LOL':
|
1373 |
+
parsed_frame['salary'] = parsed_frame.apply(lambda row: sum(st.session_state['map_dict']['salary_map'].get(player, 0) for player in row), axis=1)
|
1374 |
+
parsed_frame['median'] = parsed_frame.apply(lambda row: sum(st.session_state['map_dict']['proj_map'].get(player, 0) for player in row), axis=1)
|
1375 |
+
parsed_frame['Own'] = parsed_frame.apply(lambda row: sum(st.session_state['map_dict']['own_map'].get(player, 0) for player in row), axis=1)
|
1376 |
if 'stack_dict' in st.session_state:
|
1377 |
+
team_dict = dict(zip(st.session_state['projections_df']['player_names'], st.session_state['projections_df']['team']))
|
1378 |
+
if sport_var == 'LOL':
|
1379 |
+
parsed_frame['Stack'] = parsed_frame.apply(
|
1380 |
+
lambda row: Counter(
|
1381 |
+
team_dict.get(player, '') for player in row
|
1382 |
+
if team_dict.get(player, '') != ''
|
1383 |
+
).most_common(1)[0][0] if any(team_dict.get(player, '') for player in row) else '',
|
1384 |
+
axis=1
|
1385 |
+
)
|
1386 |
+
parsed_frame['Size'] = parsed_frame.apply(
|
1387 |
+
lambda row: Counter(
|
1388 |
+
team_dict.get(player, '') for player in row
|
1389 |
+
if team_dict.get(player, '') != ''
|
1390 |
+
).most_common(1)[0][1] if any(team_dict.get(player, '') for player in row) else 0,
|
1391 |
+
axis=1
|
1392 |
+
)
|
1393 |
+
else:
|
1394 |
+
parsed_frame['Stack'] = parsed_frame.apply(
|
1395 |
+
lambda row: Counter(
|
1396 |
+
team_dict.get(player, '') for player in row[2:]
|
1397 |
+
if team_dict.get(player, '') != ''
|
1398 |
+
).most_common(1)[0][0] if any(team_dict.get(player, '') for player in row[2:]) else '',
|
1399 |
+
axis=1
|
1400 |
+
)
|
1401 |
+
parsed_frame['Size'] = parsed_frame.apply(
|
1402 |
+
lambda row: Counter(
|
1403 |
+
team_dict.get(player, '') for player in row[2:]
|
1404 |
+
if team_dict.get(player, '') != ''
|
1405 |
+
).most_common(1)[0][1] if any(team_dict.get(player, '') for player in row[2:]) else 0,
|
1406 |
+
axis=1
|
1407 |
+
)
|
1408 |
elif type_var == 'Showdown':
|
1409 |
# Calculate salary (CPT uses cpt_salary_map, others use salary_map)
|
1410 |
+
parsed_frame['salary'] = parsed_frame.apply(
|
1411 |
lambda row: st.session_state['map_dict']['cpt_salary_map'].get(row.iloc[0], 0) +
|
1412 |
sum(st.session_state['map_dict']['salary_map'].get(player, 0) for player in row.iloc[1:]),
|
1413 |
axis=1
|
1414 |
)
|
1415 |
|
1416 |
# Calculate median (CPT uses cpt_proj_map, others use proj_map)
|
1417 |
+
parsed_frame['median'] = parsed_frame.apply(
|
1418 |
lambda row: st.session_state['map_dict']['cpt_proj_map'].get(row.iloc[0], 0) +
|
1419 |
sum(st.session_state['map_dict']['proj_map'].get(player, 0) for player in row.iloc[1:]),
|
1420 |
axis=1
|
1421 |
)
|
1422 |
|
1423 |
# Calculate ownership (CPT uses cpt_own_map, others use own_map)
|
1424 |
+
parsed_frame['Own'] = parsed_frame.apply(
|
1425 |
lambda row: st.session_state['map_dict']['cpt_own_map'].get(row.iloc[0], 0) +
|
1426 |
sum(st.session_state['map_dict']['own_map'].get(player, 0) for player in row.iloc[1:]),
|
1427 |
axis=1
|
|
|
1441 |
if type_var == 'Classic':
|
1442 |
if sport_var == 'CS2' or sport_var == 'LOL':
|
1443 |
# Calculate salary (CPT uses cpt_salary_map, others use salary_map)
|
1444 |
+
parsed_frame['salary'] = parsed_frame.apply(
|
1445 |
lambda row: st.session_state['map_dict']['cpt_salary_map'].get(row.iloc[0], 0) +
|
1446 |
sum(st.session_state['map_dict']['salary_map'].get(player, 0) for player in row.iloc[1:]),
|
1447 |
axis=1
|
1448 |
)
|
1449 |
|
1450 |
# Calculate median (CPT uses cpt_proj_map, others use proj_map)
|
1451 |
+
parsed_frame['median'] = parsed_frame.apply(
|
1452 |
lambda row: st.session_state['map_dict']['cpt_proj_map'].get(row.iloc[0], 0) +
|
1453 |
sum(st.session_state['map_dict']['proj_map'].get(player, 0) for player in row.iloc[1:]),
|
1454 |
axis=1
|
1455 |
)
|
1456 |
|
1457 |
# Calculate ownership (CPT uses cpt_own_map, others use own_map)
|
1458 |
+
parsed_frame['Own'] = parsed_frame.apply(
|
1459 |
lambda row: st.session_state['map_dict']['cpt_own_map'].get(row.iloc[0], 0) +
|
1460 |
sum(st.session_state['map_dict']['own_map'].get(player, 0) for player in row.iloc[1:]),
|
1461 |
axis=1
|
1462 |
)
|
1463 |
|
1464 |
elif sport_var != 'CS2' and sport_var != 'LOL':
|
1465 |
+
parsed_frame['salary'] = parsed_frame.apply(lambda row: sum(st.session_state['map_dict']['salary_map'].get(player, 0) for player in row), axis=1)
|
1466 |
+
parsed_frame['median'] = parsed_frame.apply(lambda row: sum(st.session_state['map_dict']['proj_map'].get(player, 0) for player in row), axis=1)
|
1467 |
+
parsed_frame['Own'] = parsed_frame.apply(lambda row: sum(st.session_state['map_dict']['own_map'].get(player, 0) for player in row), axis=1)
|
1468 |
if 'stack_dict' in st.session_state:
|
1469 |
+
team_dict = dict(zip(st.session_state['projections_df']['player_names'], st.session_state['projections_df']['team']))
|
1470 |
+
if sport_var == 'LOL':
|
1471 |
+
parsed_frame['Stack'] = parsed_frame.apply(
|
1472 |
+
lambda row: Counter(
|
1473 |
+
team_dict.get(player, '') for player in row
|
1474 |
+
if team_dict.get(player, '') != ''
|
1475 |
+
).most_common(1)[0][0] if any(team_dict.get(player, '') for player in row) else '',
|
1476 |
+
axis=1
|
1477 |
+
)
|
1478 |
+
parsed_frame['Size'] = parsed_frame.apply(
|
1479 |
+
lambda row: Counter(
|
1480 |
+
team_dict.get(player, '') for player in row
|
1481 |
+
if team_dict.get(player, '') != ''
|
1482 |
+
).most_common(1)[0][1] if any(team_dict.get(player, '') for player in row) else 0,
|
1483 |
+
axis=1
|
1484 |
+
)
|
1485 |
+
else:
|
1486 |
+
parsed_frame['Stack'] = parsed_frame.apply(
|
1487 |
+
lambda row: Counter(
|
1488 |
+
team_dict.get(player, '') for player in row[2:]
|
1489 |
+
if team_dict.get(player, '') != ''
|
1490 |
+
).most_common(1)[0][0] if any(team_dict.get(player, '') for player in row[2:]) else '',
|
1491 |
+
axis=1
|
1492 |
+
)
|
1493 |
+
parsed_frame['Size'] = parsed_frame.apply(
|
1494 |
+
lambda row: Counter(
|
1495 |
+
team_dict.get(player, '') for player in row[2:]
|
1496 |
+
if team_dict.get(player, '') != ''
|
1497 |
+
).most_common(1)[0][1] if any(team_dict.get(player, '') for player in row[2:]) else 0,
|
1498 |
+
axis=1
|
1499 |
+
)
|
1500 |
elif type_var == 'Showdown':
|
1501 |
# Calculate salary (CPT uses cpt_salary_map, others use salary_map)
|
1502 |
+
parsed_frame['salary'] = parsed_frame.apply(
|
1503 |
lambda row: st.session_state['map_dict']['cpt_salary_map'].get(row.iloc[0], 0) +
|
1504 |
sum(st.session_state['map_dict']['salary_map'].get(player, 0) for player in row.iloc[1:]),
|
1505 |
axis=1
|
1506 |
)
|
1507 |
|
1508 |
# Calculate median (CPT uses cpt_proj_map, others use proj_map)
|
1509 |
+
parsed_frame['median'] = parsed_frame.apply(
|
1510 |
lambda row: st.session_state['map_dict']['cpt_proj_map'].get(row.iloc[0], 0) +
|
1511 |
sum(st.session_state['map_dict']['proj_map'].get(player, 0) for player in row.iloc[1:]),
|
1512 |
axis=1
|
1513 |
)
|
1514 |
|
1515 |
# Calculate ownership (CPT uses cpt_own_map, others use own_map)
|
1516 |
+
parsed_frame['Own'] = parsed_frame.apply(
|
1517 |
lambda row: st.session_state['map_dict']['cpt_own_map'].get(row.iloc[0], 0) +
|
1518 |
sum(st.session_state['map_dict']['own_map'].get(player, 0) for player in row.iloc[1:]),
|
1519 |
axis=1
|