Spaces:
Runtime error
Runtime error
Update app.py
Browse files
app.py
CHANGED
@@ -291,83 +291,35 @@ with tab2:
|
|
291 |
|
292 |
for flex in flex_file['Position'].unique():
|
293 |
sub_idx = flex_file[flex_file['Position'] != "Var"].index
|
294 |
-
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx]) ==
|
295 |
|
296 |
for flex in flex_file['Position'].unique():
|
297 |
-
sub_idx = flex_file[flex_file['Position'].str.contains("
|
298 |
-
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx]) ==
|
299 |
|
300 |
for flex in flex_file['Position'].unique():
|
301 |
sub_idx = flex_file[flex_file['Position'] == "C"].index
|
302 |
-
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx]) <=
|
303 |
-
|
304 |
-
for flex in flex_file['Position'].unique():
|
305 |
-
sub_idx = flex_file[flex_file['Position'] == "1B"].index
|
306 |
-
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx]) <= 1
|
307 |
-
|
308 |
-
for flex in flex_file['Position'].unique():
|
309 |
-
sub_idx = flex_file[flex_file['Position'] == "2B"].index
|
310 |
-
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx]) <= 1
|
311 |
-
|
312 |
-
for flex in flex_file['Position'].unique():
|
313 |
-
sub_idx = flex_file[flex_file['Position'] == "3B"].index
|
314 |
-
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx]) <= 1
|
315 |
-
|
316 |
-
for flex in flex_file['Position'].unique():
|
317 |
-
sub_idx = flex_file[flex_file['Position'] == "SS"].index
|
318 |
-
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx]) <= 1
|
319 |
-
|
320 |
-
for flex in flex_file['Position'].unique():
|
321 |
-
sub_idx = flex_file[flex_file['Position'] == "OF"].index
|
322 |
-
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx]) <= 3
|
323 |
-
|
324 |
-
for flex in flex_file['Position'].unique():
|
325 |
-
sub_idx = flex_file[flex_file['Position'].str.contains("C")].index
|
326 |
-
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx]) >= 1
|
327 |
-
|
328 |
-
for flex in flex_file['Position'].unique():
|
329 |
-
sub_idx = flex_file[flex_file['Position'].str.contains("1B")].index
|
330 |
-
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx]) >= 1
|
331 |
-
|
332 |
-
for flex in flex_file['Position'].unique():
|
333 |
-
sub_idx = flex_file[flex_file['Position'].str.contains("2B")].index
|
334 |
-
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx]) >= 1
|
335 |
|
336 |
for flex in flex_file['Position'].unique():
|
337 |
-
sub_idx = flex_file[flex_file['Position'].str.contains("
|
338 |
-
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx])
|
339 |
|
340 |
for flex in flex_file['Position'].unique():
|
341 |
-
sub_idx = flex_file[flex_file['Position']
|
342 |
-
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx])
|
343 |
|
344 |
for flex in flex_file['Position'].unique():
|
345 |
-
sub_idx = flex_file[flex_file['Position']
|
346 |
-
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx]) >=
|
347 |
|
348 |
for flex in flex_file['Position'].unique():
|
349 |
-
sub_idx = flex_file[
|
350 |
-
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx])
|
351 |
-
|
352 |
-
for flex in flex_file['Position'].unique():
|
353 |
-
sub_idx = flex_file[(flex_file['Position'] == "SS") | (flex_file['Position'] == "2B")| (flex_file['Position'] == "2B/SS")].index
|
354 |
-
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx]) <= 2
|
355 |
-
|
356 |
-
for flex in flex_file['Position'].unique():
|
357 |
-
sub_idx = flex_file[(flex_file['Position'] == "2B") | (flex_file['Position'] == "3B")| (flex_file['Position'] == "2B/3B")].index
|
358 |
-
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx]) <= 2
|
359 |
-
|
360 |
-
for flex in flex_file['Position'].unique():
|
361 |
-
sub_idx = flex_file[(flex_file['Position'] == "1B") | (flex_file['Position'] == "3B")| (flex_file['Position'] == "1B/3B")].index
|
362 |
-
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx]) <= 2
|
363 |
-
|
364 |
-
for flex in flex_file['Position'].unique():
|
365 |
-
sub_idx = flex_file[(flex_file['Position'] == "1B") | (flex_file['Position'] == "C")| (flex_file['Position'] == "1B/C")].index
|
366 |
-
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx]) <= 2
|
367 |
|
368 |
for flex in flex_file['Position'].unique():
|
369 |
-
sub_idx = flex_file[
|
370 |
-
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx])
|
371 |
|
372 |
player_count = []
|
373 |
player_trim = []
|
@@ -392,6 +344,7 @@ with tab2:
|
|
392 |
df['Cost'] = df['Names'].map(player_sal)
|
393 |
df['Proj'] = df['Names'].map(player_proj)
|
394 |
df['Own'] = df['Names'].map(player_own)
|
|
|
395 |
total_cost = sum(df['Cost'])
|
396 |
total_own = sum(df['Own'])
|
397 |
total_proj = sum(df['Proj'])
|
@@ -403,61 +356,56 @@ with tab2:
|
|
403 |
del lineup_final[lineup_final.columns[1]]
|
404 |
lineup_final = lineup_final.reset_index(drop=True)
|
405 |
|
406 |
-
|
407 |
-
|
408 |
-
|
409 |
-
|
410 |
-
# for pname in range(0,len(line_hold)):
|
411 |
-
# if line_hold.iat[pname,1] == 'QB':
|
412 |
-
# if line_hold.iat[pname,0] not in p_used:
|
413 |
-
# sorted_lineup.append(line_hold.iat[pname,0])
|
414 |
-
# p_used.extend(sorted_lineup)
|
415 |
-
# rbvar = 0
|
416 |
-
# for pname in range(0,len(line_hold)):
|
417 |
-
# if rbvar == 2:
|
418 |
-
# pname = len(line_hold)
|
419 |
-
# elif rbvar < 2:
|
420 |
-
# if line_hold.iat[pname,1] == 'RB':
|
421 |
-
# if line_hold.iat[pname,0] not in p_used:
|
422 |
-
# sorted_lineup.append(line_hold.iat[pname,0])
|
423 |
-
# rbvar = rbvar + 1
|
424 |
-
# p_used.extend(sorted_lineup)
|
425 |
-
# wrvar = 0
|
426 |
-
# for pname in range(0,len(line_hold)):
|
427 |
-
# if wrvar == 3:
|
428 |
-
# pname = len(line_hold)
|
429 |
-
# elif wrvar < 3:
|
430 |
-
# if line_hold.iat[pname,1] == 'WR':
|
431 |
-
# if line_hold.iat[pname,0] not in p_used:
|
432 |
-
# sorted_lineup.append(line_hold.iat[pname,0])
|
433 |
-
# wrvar = wrvar + 1
|
434 |
-
# p_used.extend(sorted_lineup)
|
435 |
-
# tevar = 0
|
436 |
-
# for pname in range(0,len(line_hold)):
|
437 |
-
# if tevar == 1:
|
438 |
-
# pname = len(line_hold)
|
439 |
-
# elif tevar < 1:
|
440 |
-
# if line_hold.iat[pname,1] == 'TE':
|
441 |
-
# if line_hold.iat[pname,0] not in p_used:
|
442 |
-
# sorted_lineup.append(line_hold.iat[pname,0])
|
443 |
-
# tevar = tevar + 1
|
444 |
-
# p_used.extend(sorted_lineup)
|
445 |
|
446 |
-
|
447 |
-
|
448 |
-
|
449 |
-
|
450 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
451 |
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
|
458 |
-
|
459 |
-
|
460 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
461 |
|
462 |
# elif site_var1 == 'Fanduel':
|
463 |
# line_hold = lineup_final[['Names']]
|
|
|
291 |
|
292 |
for flex in flex_file['Position'].unique():
|
293 |
sub_idx = flex_file[flex_file['Position'] != "Var"].index
|
294 |
+
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx]) == 9
|
295 |
|
296 |
for flex in flex_file['Position'].unique():
|
297 |
+
sub_idx = flex_file[flex_file['Position'].str.contains("G")].index
|
298 |
+
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx]) == 1
|
299 |
|
300 |
for flex in flex_file['Position'].unique():
|
301 |
sub_idx = flex_file[flex_file['Position'] == "C"].index
|
302 |
+
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx]) <= 4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
303 |
|
304 |
for flex in flex_file['Position'].unique():
|
305 |
+
sub_idx = flex_file[flex_file['Position'].str.contains("W")].index
|
306 |
+
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx]) <= 4
|
307 |
|
308 |
for flex in flex_file['Position'].unique():
|
309 |
+
sub_idx = flex_file[flex_file['Position'] == "D"].index
|
310 |
+
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx]) <= 4
|
311 |
|
312 |
for flex in flex_file['Position'].unique():
|
313 |
+
sub_idx = flex_file[flex_file['Position'] == "C"].index
|
314 |
+
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx]) >= 2
|
315 |
|
316 |
for flex in flex_file['Position'].unique():
|
317 |
+
sub_idx = flex_file[flex_file['Position'].str.contains("W")].index
|
318 |
+
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx]) >= 2
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
319 |
|
320 |
for flex in flex_file['Position'].unique():
|
321 |
+
sub_idx = flex_file[flex_file['Position'] == "D"].index
|
322 |
+
total_score += pulp.lpSum([player_vars[idx] for idx in sub_idx]) >= 2
|
323 |
|
324 |
player_count = []
|
325 |
player_trim = []
|
|
|
344 |
df['Cost'] = df['Names'].map(player_sal)
|
345 |
df['Proj'] = df['Names'].map(player_proj)
|
346 |
df['Own'] = df['Names'].map(player_own)
|
347 |
+
df['Line'] = df['Names'].map(player_line)
|
348 |
total_cost = sum(df['Cost'])
|
349 |
total_own = sum(df['Own'])
|
350 |
total_proj = sum(df['Proj'])
|
|
|
356 |
del lineup_final[lineup_final.columns[1]]
|
357 |
lineup_final = lineup_final.reset_index(drop=True)
|
358 |
|
359 |
+
if site_var1 == 'Draftkings':
|
360 |
+
line_hold = lineup_final[['Names']]
|
361 |
+
line_hold['pos'] = line_hold['Names'].map(player_pos)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
362 |
|
363 |
+
cvar = 0
|
364 |
+
for pname in range(0,len(line_hold)):
|
365 |
+
if cvar == 2:
|
366 |
+
pname = len(line_hold)
|
367 |
+
elif cvar < 2:
|
368 |
+
if line_hold.iat[pname,1].str.contains("C"):
|
369 |
+
if line_hold.iat[pname,0] not in p_used:
|
370 |
+
sorted_lineup.append(line_hold.iat[pname,0])
|
371 |
+
cvar = cvar + 1
|
372 |
+
p_used.extend(sorted_lineup)
|
373 |
+
wvar = 0
|
374 |
+
for pname in range(0,len(line_hold)):
|
375 |
+
if wvar == 3:
|
376 |
+
pname = len(line_hold)
|
377 |
+
elif wvar < 3:
|
378 |
+
if line_hold.iat[pname,1].str.contains("W"):
|
379 |
+
if line_hold.iat[pname,0] not in p_used:
|
380 |
+
sorted_lineup.append(line_hold.iat[pname,0])
|
381 |
+
wvar = wvar + 1
|
382 |
+
p_used.extend(sorted_lineup)
|
383 |
+
dvar = 0
|
384 |
+
for pname in range(0,len(line_hold)):
|
385 |
+
if dvar == 2:
|
386 |
+
pname = len(line_hold)
|
387 |
+
elif dvar < 2:
|
388 |
+
if line_hold.iat[pname,1].str.contains("D"):
|
389 |
+
if line_hold.iat[pname,0] not in p_used:
|
390 |
+
sorted_lineup.append(line_hold.iat[pname,0])
|
391 |
+
dvar = dvar + 1
|
392 |
+
p_used.extend(sorted_lineup)
|
393 |
|
394 |
+
for pname in range(0,len(line_hold)):
|
395 |
+
if line_hold.iat[pname,1] != 'G':
|
396 |
+
if line_hold.iat[pname,0] not in p_used:
|
397 |
+
sorted_lineup.append(line_hold.iat[pname,0])
|
398 |
+
p_used.extend(sorted_lineup)
|
399 |
|
400 |
+
for pname in range(0,len(line_hold)):
|
401 |
+
if line_hold.iat[pname,1] == 'G':
|
402 |
+
if line_hold.iat[pname,0] not in p_used:
|
403 |
+
sorted_lineup.append(line_hold.iat[pname,0])
|
404 |
+
p_used.extend(sorted_lineup)
|
405 |
+
|
406 |
+
lineup_final['sorted'] = sorted_lineup
|
407 |
+
lineup_final = lineup_final.drop(columns=['Names'])
|
408 |
+
lineup_final.rename(columns={"sorted": "Names"}, inplace = True)
|
409 |
|
410 |
# elif site_var1 == 'Fanduel':
|
411 |
# line_hold = lineup_final[['Names']]
|