Group Predictions

Row

Win percentage for the week

Season Win Percentage

Games Correct

207

Games Picked

285

Number of predictions

85

Row

This Week’s Predictions
Game Prediction Winner Correct Correct Votes Correct Percent
1 Philadelphia Eagles Philadelphia Eagles Yes 45 0.5294

Individual Predictions

row

Individual Table

Individual Results
Week 22
Name Weekly # Correct Percent Weeks Picked Season Percent Adj Season Percent Season Trend
Week 1 Week 2 Week 3 Week 4 Week 5 Week 6 Week 7 Week 8 Week 9 Week 10 Week 11 Week 12 Week 13 Week 14 Week 15 Week 16 Week 17 Week 18 Week 19 Week 20 Week 21 Week 22
Brittany Pillar NA NA NA NA NA 10 12 NA NA 10 11 10 16 11 13 12 13 7 4 2 1 1 1 15 0.7557 0.5152
Robert Cunningham 14 9 10 12 8 12 11 11 12 9 11 10 NA 10 13 12 14 12 3 2 0 1 1 21 0.7286 0.6955
Marc Agne 14 7 9 13 6 13 10 9 12 10 10 7 16 9 13 12 13 9 5 3 0 1 1 22 0.7053 0.7053
Jeremy Stieler 11 9 6 11 6 13 11 11 11 9 9 8 16 10 14 13 11 10 5 3 0 1 1 22 0.6947 0.6947
Christopher Sims 11 9 10 8 7 10 12 14 11 9 8 9 16 10 11 11 13 10 4 4 0 1 1 22 0.6947 0.6947
Ryan Wiggins NA NA NA NA NA NA NA NA 11 NA NA NA NA NA NA 10 NA NA NA NA NA 1 1 3 0.6875 0.0938
Bruce Williams 13 9 10 8 9 13 12 10 NA 10 10 9 14 9 12 11 12 6 3 2 2 1 1 21 0.6852 0.6541
Nicole Dike 13 7 8 10 7 10 10 12 10 9 10 8 15 9 13 13 15 8 4 3 0 1 1 22 0.6842 0.6842
Thomas Brenstuhl 9 8 NA 6 7 9 10 13 11 9 13 9 15 11 14 NA 12 8 NA 3 1 1 1 19 0.6842 0.5909
Edward Ford 9 7 6 10 5 10 10 13 11 9 12 10 14 11 14 11 12 11 4 2 2 1 1 22 0.6807 0.6807
Keven Talbert 10 7 9 11 9 14 13 9 9 11 10 10 12 10 10 12 NA 10 3 2 1 1 1 21 0.6803 0.6494
Nicholas Cinco 12 8 NA NA 6 11 11 12 11 11 8 9 12 8 14 11 10 10 5 2 0 1 1 20 0.6798 0.6180
David Dupree 13 8 10 9 7 11 11 11 12 NA 9 8 13 10 12 12 13 9 4 1 0 1 1 21 0.6790 0.6481
Kevin Buettner 12 8 8 10 7 11 10 9 10 10 10 8 16 10 13 11 NA 10 4 3 1 1 1 21 0.6766 0.6458
Brian Hollmann NA NA NA 8 8 10 10 11 9 8 12 8 16 11 12 10 NA 7 4 3 1 1 1 18 0.6742 0.5516
Ramar Williams 10 8 7 11 8 11 11 10 8 8 9 8 13 10 12 14 14 11 4 NA 1 1 1 21 0.6726 0.6420
Zechariah Ziebarth 8 8 8 10 5 10 10 11 11 NA 12 8 15 10 16 10 NA 9 5 3 0 1 1 20 0.6667 0.6061
Ryan Cvik 10 8 9 11 9 11 11 13 10 7 7 9 12 10 13 12 11 9 4 3 0 1 1 22 0.6667 0.6667
Earl Dixon 10 9 6 9 9 NA 11 10 9 9 10 10 15 11 10 12 NA NA 4 NA NA 1 1 17 0.6652 0.5140
Antonio Mitchell 11 7 8 9 9 11 10 11 10 8 8 9 13 9 13 10 13 12 4 2 0 1 1 22 0.6596 0.6596
George Hall 12 NA 8 NA NA NA NA NA NA 10 NA NA NA NA NA NA NA NA NA NA NA 1 1 4 0.6596 0.1199
Karen Richardson 10 9 7 9 11 8 8 12 8 10 9 9 13 10 14 12 NA 9 4 3 NA 1 1 20 0.6592 0.5993
Jonathon Leslein 10 8 7 10 8 12 10 10 8 10 7 10 12 10 13 12 NA 12 5 2 0 1 1 21 0.6580 0.6281
Montee Brown 10 6 8 7 8 14 11 10 8 10 10 9 14 8 13 11 11 10 4 2 2 1 1 22 0.6561 0.6561
Michelle Fraterrigo 11 8 9 9 7 11 12 12 11 8 8 10 NA 9 NA 11 NA NA NA 3 1 1 1 17 0.6558 0.5068
Richard Beeghley 11 7 6 11 7 14 10 10 10 8 9 9 14 11 12 11 11 9 3 2 0 1 1 22 0.6526 0.6526
Steward Hogans 10 7 10 NA NA NA NA 10 13 8 8 9 11 8 11 12 NA 12 3 2 2 1 1 17 0.6524 0.5041
Daniel Major 8 10 11 6 8 11 NA 10 10 10 11 9 14 11 9 NA 8 NA 4 3 1 1 1 19 0.6513 0.5625
Michael Branson 9 8 8 9 8 11 9 11 10 9 11 7 14 9 13 10 11 NA 4 2 1 1 1 21 0.6506 0.6210
Nicholas Nguyen 11 8 5 8 7 12 11 9 10 9 10 9 NA 9 16 11 12 NA 3 3 0 1 1 20 0.6482 0.5893
Jeffrey Rudderforth 11 11 10 9 6 7 10 11 12 9 8 8 14 9 11 12 NA 9 4 2 0 1 1 21 0.6468 0.6174
Nahir Shepard 11 8 10 8 6 12 8 12 9 9 11 10 13 9 NA 9 9 11 NA NA NA 1 1 18 0.6459 0.5285
Darvin Graham 12 7 6 9 8 11 9 NA 10 9 9 10 NA 11 14 NA 12 11 4 0 0 1 1 19 0.6456 0.5576
Brian Patterson 11 6 9 9 6 NA 9 13 NA 9 12 7 14 9 13 10 12 8 3 3 1 1 1 20 0.6445 0.5859
Walter Archambo 8 8 7 9 6 12 11 11 12 10 10 9 15 9 9 9 12 8 3 3 1 1 1 22 0.6421 0.6421
Rachel Follo 15 8 6 6 9 7 10 11 9 9 10 7 13 11 11 8 13 10 4 3 1 1 1 22 0.6386 0.6386
Rachel Follo 15 8 6 6 9 7 10 11 9 9 10 7 13 11 11 8 13 10 4 3 1 1 1 22 0.6386 0.6386
Anthony Brinson 11 7 NA 9 10 11 9 12 6 NA NA 8 14 10 NA 11 11 8 4 1 0 1 1 18 0.6356 0.5200
Wayne Schofield 7 5 9 5 7 7 11 11 10 8 13 10 13 11 NA 13 12 9 5 2 0 1 1 21 0.6283 0.5997
Kristen White 14 7 9 9 8 9 9 8 8 9 9 8 13 8 14 9 10 9 NA 3 0 1 1 21 0.6237 0.5954
Terry Hardison 13 8 6 7 4 11 10 12 11 9 11 7 NA NA 11 10 13 8 4 2 1 1 1 20 0.6211 0.5646
Ryan Shipley 11 6 10 8 5 9 11 NA 10 NA 9 10 NA NA 10 9 NA 9 NA NA 2 1 1 15 0.6000 0.4091
Donald Park 9 NA 6 NA NA 10 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 1 1 4 0.5532 0.1006
Akilah Gamble 9 NA 12 9 6 8 12 6 NA 8 NA 7 NA NA 3 6 NA NA NA 4 1 1 1 14 0.5318 0.3384
Andrew Gray 5 8 9 7 NA NA 7 9 7 11 8 6 5 10 9 NA 9 8 NA 1 1 1 1 18 0.5149 0.4213
Aubrey Conn 13 7 10 9 8 12 12 9 13 9 10 11 16 10 12 12 15 12 3 3 2 0 0 22 0.7298 0.7298
Michael Pacifico 13 8 7 9 9 12 12 10 14 9 11 10 14 10 12 12 14 12 3 3 0 0 0 22 0.7158 0.7158
Robert Gelo 14 8 9 9 8 13 13 11 12 10 10 9 12 11 11 13 14 10 2 2 2 0 0 22 0.7123 0.7123
Chris Papageorge 14 8 10 11 8 12 12 12 11 8 9 7 15 7 11 11 15 12 4 3 1 0 0 22 0.7053 0.7053
Heather Kohler 12 NA 7 12 9 11 NA 12 NA 8 9 10 14 NA NA NA NA NA 4 NA NA 0 0 12 0.6923 0.3776
Randy Dick 11 7 8 8 9 14 10 10 13 11 10 9 14 10 12 12 13 10 3 2 1 0 0 22 0.6912 0.6912
Jason Schattel 13 7 6 9 10 11 9 10 11 9 10 10 13 9 13 12 14 12 4 3 2 0 0 22 0.6912 0.6912
Erik Neumann 12 8 9 9 7 13 10 11 12 9 10 NA NA 10 15 11 NA 12 4 2 1 0 0 19 0.6875 0.5938
Anthony Bloss 13 8 8 11 8 13 11 11 9 7 10 9 14 9 13 12 14 9 3 3 0 0 0 22 0.6842 0.6842
Bryson Scott 10 9 7 NA 7 12 11 12 10 9 NA 9 15 10 10 NA 12 NA NA 3 2 0 0 17 0.6820 0.5270
William Schouviller 12 7 9 9 11 13 10 9 NA 7 11 8 15 11 13 11 11 11 3 2 1 0 0 21 0.6815 0.6505
Kevin Kehoe 13 7 9 10 8 13 12 11 9 8 8 8 13 9 14 12 12 10 4 2 2 0 0 22 0.6807 0.6807
Pablo Burgosramos 9 5 8 9 5 14 12 12 12 7 11 10 13 10 14 10 14 9 5 NA 2 0 0 21 0.6797 0.6488
Daniel Baller 14 6 9 8 7 9 10 12 10 10 10 10 15 10 12 11 12 9 3 3 2 0 0 22 0.6737 0.6737
Stephen Bush 9 7 4 10 9 13 13 9 10 10 8 9 16 10 13 13 13 8 4 2 2 0 0 22 0.6737 0.6737
George Sweet 13 9 6 10 11 9 11 11 12 7 10 11 12 9 12 12 10 8 4 3 1 0 0 22 0.6702 0.6702
Shawn Carden 10 9 10 10 8 11 10 11 11 9 8 8 15 9 14 11 NA 8 4 2 2 0 0 21 0.6691 0.6387
Rafael Torres 12 9 8 7 8 10 12 10 12 11 11 7 12 10 NA 11 NA 11 4 3 0 0 0 20 0.6640 0.6036
David Plate 10 8 8 8 9 NA NA NA 13 10 8 9 14 NA 12 11 12 10 4 3 1 0 0 18 0.6608 0.5407
Paul Seitz 11 9 9 NA 8 10 11 NA NA 7 8 8 14 7 14 NA 13 8 4 4 1 0 0 18 0.6577 0.5381
Cade Martinez 10 7 8 8 6 11 11 9 10 10 9 8 15 11 13 11 14 8 4 4 0 0 0 22 0.6561 0.6561
Jennifer Arty 10 7 9 7 7 12 8 12 11 9 10 8 15 9 13 10 NA NA NA NA 2 0 0 18 0.6543 0.5353
Michael Moss 13 8 8 8 10 13 8 9 11 9 10 6 11 10 12 12 13 9 3 2 1 0 0 22 0.6526 0.6526
Christopher Mulcahy 11 9 7 8 NA 8 9 9 10 9 10 9 13 11 12 10 12 9 5 3 2 0 0 21 0.6494 0.6199
Kamar Morgan 12 6 8 5 8 12 9 12 10 8 10 10 16 10 NA 9 12 9 5 2 1 0 0 21 0.6468 0.6174
Jeffrey Zornes 9 11 6 8 7 10 9 11 9 10 NA 8 15 11 11 9 13 10 5 2 1 0 0 21 0.6458 0.6164
David Humes 10 9 8 11 5 8 12 8 12 11 11 6 14 9 9 12 13 9 4 2 1 0 0 22 0.6456 0.6456
Michael Moore 11 6 7 7 8 12 NA 9 9 NA 12 9 16 10 13 11 NA 8 NA 2 1 0 0 18 0.6453 0.5280
Louie Renew 9 8 12 4 10 8 8 11 11 8 10 9 NA 10 10 13 13 9 5 3 2 0 0 21 0.6431 0.6139
Jonathan Smith 11 NA 4 10 7 NA 8 11 10 7 9 7 15 9 15 13 11 8 3 4 1 0 0 20 0.6392 0.5811
Bunnaro Sun 12 5 8 11 6 8 9 9 12 8 8 NA 14 NA 12 13 13 NA 5 2 0 0 0 19 0.6379 0.5509
Cheryl Brown 11 6 9 8 8 10 NA 9 8 10 11 9 14 10 10 12 NA 10 3 2 2 0 0 20 0.6378 0.5798
James Small 12 NA 9 10 8 10 9 9 10 10 NA 6 11 8 13 11 13 7 4 2 0 0 0 20 0.6353 0.5775
Trevor Macgavin 12 7 10 8 8 8 9 7 10 7 11 10 16 9 12 12 11 8 3 1 1 0 0 22 0.6316 0.6316
Jared Kaanga 11 9 9 8 7 10 9 11 13 9 9 7 NA 11 11 10 NA 8 3 1 0 0 0 20 0.6166 0.5605
Melissa Printup 8 9 9 6 10 10 10 10 7 10 9 8 13 7 13 11 11 8 2 2 2 0 0 22 0.6140 0.6140
Marcus Evans 11 8 NA 8 7 10 7 9 10 6 11 8 12 8 13 9 11 10 3 2 0 0 0 21 0.6059 0.5784
Kenneth Nielsen 13 8 7 NA 8 9 11 10 NA NA NA NA 11 NA NA 8 12 NA NA 1 0 0 0 13 0.6049 0.3574
Steven Webster 7 7 9 6 7 9 NA 11 NA 8 10 8 NA 8 12 12 NA NA 4 4 1 0 0 17 0.5942 0.4592
Brenton Jones NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 2 1 0 0 3 0.4286 0.0584
Clayton Grimes 14 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 1 0.8750 0.0398
Tanaysa Henderson NA NA NA NA NA 12 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 1 0.8571 0.0390
Matthew Blair NA NA NA NA NA 11 10 12 10 9 11 8 15 11 15 10 NA NA NA NA NA NA 0 11 0.7531 0.3766
Wallace Savage 12 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 1 0.7500 0.0341
Brian Holder 12 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 1 0.7500 0.0341
Sandra Carter 12 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 1 0.7500 0.0341
Michael Linder 11 9 9 NA NA 12 10 11 10 NA 11 NA 13 NA 14 13 13 NA NA NA NA NA 0 12 0.7312 0.3988
Steven Maisonneuve NA NA NA NA 11 10 11 12 11 8 NA 10 12 9 NA NA NA NA NA NA NA NA 0 9 0.7231 0.2958
Chester Todd 13 8 8 8 9 13 13 10 9 9 11 9 15 10 12 13 14 NA 3 2 NA NA 0 19 0.7105 0.6136
Nathan Brown 13 8 9 11 9 NA 10 11 14 9 10 10 14 10 12 12 NA NA 4 NA 0 NA 0 17 0.7094 0.5482
Patrick Tynan 12 8 7 9 8 12 NA 12 12 10 10 6 16 11 13 NA 12 12 NA NA NA NA 0 16 0.7054 0.5130
Randolph Tidd 11 7 8 12 NA 12 11 12 13 9 11 7 16 10 11 12 NA 8 NA NA NA NA 0 16 0.7025 0.5109
Gregory Brown 15 7 6 9 8 12 9 9 13 9 10 9 15 12 13 12 NA NA NA NA NA NA 0 16 0.7000 0.5091
Jeremy Krammes 12 NA NA NA NA NA NA 10 NA 10 NA NA NA NA NA NA NA NA NA NA NA NA 0 3 0.6957 0.0949
Jeremy Mounce 12 8 8 NA 10 12 NA NA NA 10 10 NA NA NA 14 NA NA NA NA 2 NA NA 0 9 0.6935 0.2837
Bradley Hobson 13 7 8 11 7 13 10 10 11 8 NA 10 16 11 14 9 14 10 3 2 0 NA 0 20 0.6926 0.6296
Terrence Lee 11 NA NA NA NA NA NA NA NA NA NA 9 NA NA NA NA NA NA NA NA NA NA 0 2 0.6897 0.0627
Daniel Gray 11 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 1 0.6875 0.0312
Karen Coleman 13 6 NA 11 9 9 10 9 11 8 9 9 14 10 14 11 NA NA NA NA NA NA 0 15 0.6830 0.4657
Heather Ellenberger 13 8 7 8 7 12 11 11 13 9 9 10 14 9 14 11 NA 9 4 2 2 NA 0 20 0.6828 0.6207
Jennifer Bouland 13 8 10 7 8 11 10 11 9 9 12 10 NA 11 11 NA 13 10 NA 3 NA NA 0 17 0.6803 0.5257
Matthew Schultz 13 10 9 8 9 9 9 12 11 8 11 10 14 9 11 9 11 NA NA NA NA NA 0 17 0.6758 0.5222
Philip Driskill 12 7 8 10 8 NA 13 11 10 NA NA 9 14 10 NA NA NA 10 NA 3 NA NA 0 13 0.6720 0.3971
Scott Lefton 10 8 8 7 7 11 11 10 11 10 10 8 15 10 14 11 NA NA 4 3 1 NA 0 19 0.6706 0.5792
Robert Sokol 10 8 NA NA 6 9 9 13 12 9 10 8 14 10 NA NA NA NA NA NA NA NA 0 12 0.6705 0.3657
Brayant Rivera 10 8 9 8 6 13 11 10 12 9 11 10 13 10 14 8 10 10 4 NA NA NA 0 19 0.6691 0.5779
Darryle Sellers 11 11 6 8 9 11 9 10 12 9 12 7 15 9 NA 12 NA 9 NA 3 NA NA 0 17 0.6680 0.5162
Travis Delagardelle 11 12 10 8 6 11 12 11 11 9 9 NA NA NA NA NA NA NA NA NA NA NA 0 11 0.6627 0.3314
Daniel Halse 12 6 8 10 7 13 9 11 11 11 NA 8 14 9 12 12 NA 7 NA NA NA NA 0 16 0.6612 0.4809
Shaun Dahl 14 7 9 11 10 10 10 8 9 11 8 11 12 11 12 8 NA 8 NA NA NA NA 0 17 0.6602 0.5102
Noah Gosswiller 8 7 NA 10 8 NA 10 11 10 10 10 8 NA 9 14 14 NA NA 3 NA 1 NA 0 15 0.6584 0.4489
Ryan Baum 14 4 9 10 9 NA 10 10 11 10 NA 8 14 8 NA 12 NA NA NA NA NA NA 0 13 0.6582 0.3889
George Mancini 11 8 6 NA 8 6 12 NA 11 9 11 10 13 11 NA 12 NA 10 NA 2 0 NA 0 16 0.6542 0.4758
Clevante Granville 9 11 NA NA 5 11 11 9 10 11 9 10 NA 8 13 9 11 NA 3 3 0 NA 0 17 0.6500 0.5023
Pamela Augustine 14 9 9 NA 7 11 9 NA 10 NA 10 9 14 9 10 10 NA 8 3 2 0 NA 0 17 0.6486 0.5012
George Brown 14 7 8 7 6 11 10 12 9 12 11 8 12 11 10 7 12 10 3 2 2 NA 0 21 0.6479 0.6185
Brandon Parks 12 6 9 9 6 13 NA NA 12 10 10 6 NA 8 12 9 13 NA 4 NA NA NA 0 15 0.6465 0.4408
Joshua Tracey 12 5 8 6 7 NA 9 13 10 7 10 9 16 9 13 11 NA NA NA NA NA NA 0 15 0.6416 0.4375
Vincent Scannelli 11 7 7 11 8 8 11 12 9 8 9 7 12 NA 11 13 12 11 4 2 0 NA 0 20 0.6384 0.5804
Jason Jackson 12 7 5 6 5 12 9 11 10 10 12 9 NA 10 13 12 13 11 2 1 1 NA 0 20 0.6381 0.5801
Thomas Mccoy 10 7 6 8 9 11 11 10 12 10 10 8 13 9 11 10 10 8 NA NA NA NA 0 18 0.6360 0.5204
Paul Presti 12 8 9 12 7 11 8 10 NA 10 9 NA NA NA NA NA NA NA NA NA NA NA 0 10 0.6358 0.2890
Amy Asberry 11 8 6 10 NA 12 9 NA 9 8 NA NA 13 9 11 NA NA NA NA NA NA NA 0 11 0.6347 0.3174
Tara Bridgett 11 8 8 8 NA 9 NA 10 10 NA NA NA 15 NA NA NA NA NA NA NA NA NA 0 8 0.6320 0.2298
Yiming Hu 12 NA 7 7 6 8 12 9 NA 9 12 8 11 NA 12 NA NA NA NA NA NA NA 0 12 0.6278 0.3424
Ronald Schmidt 10 10 5 9 6 8 12 10 NA 7 9 10 NA 8 13 11 15 NA 2 2 1 NA 0 18 0.6245 0.5110
Matthew Olguin 10 8 9 9 7 12 11 11 9 7 8 5 14 9 12 12 7 NA 3 NA NA NA 0 18 0.6221 0.5090
Anthony Rockemore 13 8 6 8 7 NA 8 NA NA 9 9 9 12 10 12 9 NA 11 NA 2 1 NA 0 16 0.6175 0.4491
Desmond Jenkins 10 7 7 NA 7 12 8 NA NA NA NA NA 15 NA NA NA NA NA NA NA NA NA 0 7 0.6168 0.1963
Robert Lynch 6 9 8 6 9 7 7 12 NA 9 7 8 15 NA 13 13 11 10 NA 3 1 NA 0 18 0.6160 0.5040
Robert Martin 7 NA 9 8 8 8 7 NA 8 7 7 9 11 8 11 13 15 NA 6 2 1 NA 0 18 0.6144 0.5027
Diance Durand 9 9 12 7 8 10 9 11 11 7 9 8 12 NA 11 7 10 11 2 3 0 NA 0 20 0.6125 0.5568
Jordan Forwood 11 8 6 11 NA 13 NA 10 NA NA NA NA NA NA NA NA NA NA NA 1 NA NA 0 7 0.6122 0.1948
Jose Torres Mendoza 12 8 8 8 NA NA 8 9 10 11 8 7 NA 10 NA 11 NA NA NA NA NA NA 0 12 0.6111 0.3333
David Hadley 13 10 8 NA 8 NA 8 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 5 0.6104 0.1387
Keisha Vasquez 8 7 9 9 11 11 9 12 8 8 NA NA 14 NA NA 9 NA 7 NA NA NA NA 0 13 0.6100 0.3605
Kyle May 10 8 5 6 8 NA 12 10 9 8 8 8 13 7 13 12 NA NA NA 3 NA NA 0 16 0.6087 0.4427
Gary Lawrence 10 6 5 5 7 9 9 10 9 9 11 8 16 11 11 10 12 8 NA 3 0 NA 0 20 0.6079 0.5526
Megan Fitzgerald 8 11 9 10 NA NA 8 10 NA NA NA 7 13 4 12 NA NA NA 4 3 1 NA 0 13 0.6061 0.3582
Wayne Gokey 13 7 NA 11 NA NA 8 NA 8 NA NA NA NA NA NA NA NA NA NA NA NA NA 0 5 0.6026 0.1370
Jack Wheeler 9 6 5 10 8 NA 9 9 10 8 10 7 15 11 9 11 NA 10 3 2 1 NA 0 19 0.6024 0.5203
Jonathan Knight 13 10 9 6 7 NA 11 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 6 0.6022 0.1642
Kevin Green 11 9 NA 8 7 12 NA 8 NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 6 0.5978 0.1630
Derrick Elam 13 9 8 11 7 10 8 9 NA NA NA 7 NA 7 NA NA NA NA NA NA NA NA 0 10 0.5973 0.2715
Jeffrey Dusza 11 8 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 2 0.5938 0.0540
Cherylynn Vidal 13 9 8 8 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 4 0.5938 0.1080
Adam Konkle 10 9 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 2 0.5938 0.0540
Thomas Cho 10 6 NA 11 7 12 NA 8 9 NA NA NA NA NA NA NA NA NA NA NA NA NA 0 7 0.5888 0.1873
Jason Miranda 10 7 8 NA 9 11 8 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 6 0.5824 0.1588
Jennifer Wilson 11 9 10 6 NA 7 11 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 6 0.5806 0.1583
Richard Conkle 7 6 6 8 7 10 12 11 9 NA 8 NA NA 10 9 NA 12 8 3 3 1 NA 0 17 0.5778 0.4465
Joseph Martin 10 7 8 8 8 10 9 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 7 0.5607 0.1784
Sheryl Claiborne-Smith 11 7 NA NA NA 7 7 10 7 7 9 9 10 9 NA NA NA 8 NA 2 0 NA 0 14 0.5598 0.3562
Min Choi 10 NA 7 NA 8 7 NA 10 NA NA NA NA NA NA NA NA NA NA NA NA 1 NA 0 6 0.5513 0.1504
Lawrence Thuotte 9 5 12 NA 8 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 4 0.5484 0.0997
Gabriel Quinones 10 7 6 9 NA 11 8 7 NA NA NA 6 NA 9 NA NA NA NA NA NA NA NA 0 9 0.5407 0.2212
Monte Henderson 9 8 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 2 0.5312 0.0483
David Kim 9 8 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 2 0.5312 0.0483
Jamie Ainsleigh-Wong 9 8 9 9 8 5 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 6 0.5217 0.1423
Jay Kelly 10 9 7 7 5 10 7 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 7 0.5140 0.1635
Zachary Brosemer 8 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 1 0.5000 0.0227
Antonio Chapa 8 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 1 0.5000 0.0227
Vincent Kandian 9 8 8 7 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 4 0.5000 0.0909
Ashley Johnson 9 NA 6 NA 6 NA NA NA NA NA 5 9 8 NA NA NA NA NA NA NA 1 NA 0 7 0.4835 0.1538
Ashlyn Dortch 9 NA NA 8 NA 5 9 6 NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 5 0.4805 0.1092
Gabrieal Feiling 10 NA 5 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 2 NA NA NA 0 3 0.4474 0.0610
Jasprin Smith 6 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 1 0.3750 0.0170
Robert Epps NA 6 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0 1 0.3750 0.0170

Season Leaderboard

Season Leaderboard (Season Percent)
Week 22
Season Rank Name Donuts Won Weeks Picked Season Percent Adj Season Percent Season Trend
1 Clayton Grimes 0 1 0.8750 0.0398
2 Tanaysa Henderson 0 1 0.8571 0.0390
3 Brittany Pillar 2 15 0.7557 0.5152
4 Matthew Blair 0 11 0.7531 0.3766
5 Brian Holder 0 1 0.7500 0.0341
5 Sandra Carter 0 1 0.7500 0.0341
5 Wallace Savage 0 1 0.7500 0.0341
8 Michael Linder 0 12 0.7312 0.3988
9 Aubrey Conn 5 22 0.7298 0.7298
10 Robert Cunningham 2 21 0.7286 0.6955
11 Steven Maisonneuve 1 9 0.7231 0.2958
12 Michael Pacifico 2 22 0.7158 0.7158
13 Robert Gelo 2 22 0.7123 0.7123
14 Chester Todd 1 19 0.7105 0.6136
15 Nathan Brown 1 17 0.7094 0.5482
16 Patrick Tynan 2 16 0.7054 0.5130
17 Chris Papageorge 2 22 0.7053 0.7053
17 Marc Agne 3 22 0.7053 0.7053
19 Randolph Tidd 1 16 0.7025 0.5109
20 Gregory Brown 2 16 0.7000 0.5091
21 Jeremy Krammes 0 3 0.6957 0.0949
22 Christopher Sims 4 22 0.6947 0.6947
22 Jeremy Stieler 2 22 0.6947 0.6947
24 Jeremy Mounce 0 9 0.6935 0.2837
25 Bradley Hobson 1 20 0.6926 0.6296
26 Heather Kohler 0 12 0.6923 0.3776
27 Jason Schattel 2 22 0.6912 0.6912
27 Randy Dick 1 22 0.6912 0.6912
29 Terrence Lee 0 2 0.6897 0.0627
30 Daniel Gray 0 1 0.6875 0.0312
30 Erik Neumann 1 19 0.6875 0.5938
30 Ryan Wiggins 1 3 0.6875 0.0938
33 Bruce Williams 2 21 0.6852 0.6541
34 Anthony Bloss 0 22 0.6842 0.6842
34 Nicole Dike 2 22 0.6842 0.6842
34 Thomas Brenstuhl 2 19 0.6842 0.5909
37 Karen Coleman 0 15 0.6830 0.4657
38 Heather Ellenberger 1 20 0.6828 0.6207
39 Bryson Scott 1 17 0.6820 0.5270
40 William Schouviller 1 21 0.6815 0.6505
41 Edward Ford 2 22 0.6807 0.6807
41 Kevin Kehoe 1 22 0.6807 0.6807
43 Jennifer Bouland 0 17 0.6803 0.5257
43 Keven Talbert 3 21 0.6803 0.6494
45 Nicholas Cinco 1 20 0.6798 0.6180
46 Pablo Burgosramos 2 21 0.6797 0.6488
47 David Dupree 1 21 0.6790 0.6481
48 Kevin Buettner 2 21 0.6766 0.6458
49 Matthew Schultz 0 17 0.6758 0.5222
50 Brian Hollmann 2 18 0.6742 0.5516
51 Daniel Baller 1 22 0.6737 0.6737
51 Stephen Bush 3 22 0.6737 0.6737
53 Ramar Williams 2 21 0.6726 0.6420
54 Philip Driskill 1 13 0.6720 0.3971
55 Scott Lefton 0 19 0.6706 0.5792
56 Robert Sokol 0 12 0.6705 0.3657
57 George Sweet 2 22 0.6702 0.6702
58 Brayant Rivera 0 19 0.6691 0.5779
58 Shawn Carden 1 21 0.6691 0.6387
60 Darryle Sellers 0 17 0.6680 0.5162
61 Ryan Cvik 1 22 0.6667 0.6667
61 Zechariah Ziebarth 2 20 0.6667 0.6061
63 Earl Dixon 1 17 0.6652 0.5140
64 Rafael Torres 0 20 0.6640 0.6036
65 Travis Delagardelle 1 11 0.6627 0.3314
66 Daniel Halse 0 16 0.6612 0.4809
67 David Plate 0 18 0.6608 0.5407
68 Shaun Dahl 1 17 0.6602 0.5102
69 Antonio Mitchell 2 22 0.6596 0.6596
69 George Hall 1 4 0.6596 0.1199
71 Karen Richardson 2 20 0.6592 0.5993
72 Noah Gosswiller 1 15 0.6584 0.4489
73 Ryan Baum 0 13 0.6582 0.3889
74 Jonathon Leslein 2 21 0.6580 0.6281
75 Paul Seitz 1 18 0.6577 0.5381
76 Cade Martinez 1 22 0.6561 0.6561
76 Montee Brown 3 22 0.6561 0.6561
78 Michelle Fraterrigo 1 17 0.6558 0.5068
79 Jennifer Arty 1 18 0.6543 0.5353
80 George Mancini 0 16 0.6542 0.4758
81 Michael Moss 0 22 0.6526 0.6526
81 Richard Beeghley 2 22 0.6526 0.6526
83 Steward Hogans 3 17 0.6524 0.5041
84 Daniel Major 1 19 0.6513 0.5625
85 Michael Branson 1 21 0.6506 0.6210
86 Clevante Granville 0 17 0.6500 0.5023
87 Christopher Mulcahy 1 21 0.6494 0.6199
88 Pamela Augustine 0 17 0.6486 0.5012
89 Nicholas Nguyen 2 20 0.6482 0.5893
90 George Brown 2 21 0.6479 0.6185
91 Jeffrey Rudderforth 1 21 0.6468 0.6174
91 Kamar Morgan 1 21 0.6468 0.6174
93 Brandon Parks 0 15 0.6465 0.4408
94 Nahir Shepard 1 18 0.6459 0.5285
95 Jeffrey Zornes 0 21 0.6458 0.6164
96 Darvin Graham 1 19 0.6456 0.5576
96 David Humes 0 22 0.6456 0.6456
98 Michael Moore 1 18 0.6453 0.5280
99 Brian Patterson 1 20 0.6445 0.5859
100 Louie Renew 2 21 0.6431 0.6139
101 Walter Archambo 1 22 0.6421 0.6421
102 Joshua Tracey 1 15 0.6416 0.4375
103 Jonathan Smith 1 20 0.6392 0.5811
104 Rachel Follo 4 22 0.6386 0.6386
104 Rachel Follo 4 22 0.6386 0.6386
106 Vincent Scannelli 0 20 0.6384 0.5804
107 Jason Jackson 0 20 0.6381 0.5801
108 Bunnaro Sun 0 19 0.6379 0.5509
109 Cheryl Brown 1 20 0.6378 0.5798
110 Thomas Mccoy 0 18 0.6360 0.5204
111 Paul Presti 0 10 0.6358 0.2890
112 Anthony Brinson 1 18 0.6356 0.5200
113 James Small 0 20 0.6353 0.5775
114 Amy Asberry 0 11 0.6347 0.3174
115 Tara Bridgett 0 8 0.6320 0.2298
116 Trevor Macgavin 1 22 0.6316 0.6316
117 Wayne Schofield 2 21 0.6283 0.5997
118 Yiming Hu 0 12 0.6278 0.3424
119 Ronald Schmidt 1 18 0.6245 0.5110
120 Kristen White 1 21 0.6237 0.5954
121 Matthew Olguin 0 18 0.6221 0.5090
122 Terry Hardison 1 20 0.6211 0.5646
123 Anthony Rockemore 0 16 0.6175 0.4491
124 Desmond Jenkins 0 7 0.6168 0.1963
125 Jared Kaanga 0 20 0.6166 0.5605
126 Robert Lynch 0 18 0.6160 0.5040
127 Robert Martin 2 18 0.6144 0.5027
128 Melissa Printup 1 22 0.6140 0.6140
129 Diance Durand 1 20 0.6125 0.5568
130 Jordan Forwood 0 7 0.6122 0.1948
131 Jose Torres Mendoza 0 12 0.6111 0.3333
132 David Hadley 0 5 0.6104 0.1387
133 Keisha Vasquez 1 13 0.6100 0.3605
134 Kyle May 0 16 0.6087 0.4427
135 Gary Lawrence 1 20 0.6079 0.5526
136 Megan Fitzgerald 0 13 0.6061 0.3582
137 Marcus Evans 0 21 0.6059 0.5784
138 Kenneth Nielsen 0 13 0.6049 0.3574
139 Wayne Gokey 0 5 0.6026 0.1370
140 Jack Wheeler 0 19 0.6024 0.5203
141 Jonathan Knight 0 6 0.6022 0.1642
142 Ryan Shipley 2 15 0.6000 0.4091
143 Kevin Green 0 6 0.5978 0.1630
144 Derrick Elam 0 10 0.5973 0.2715
145 Steven Webster 1 17 0.5942 0.4592
146 Adam Konkle 0 2 0.5938 0.0540
146 Cherylynn Vidal 0 4 0.5938 0.1080
146 Jeffrey Dusza 0 2 0.5938 0.0540
149 Thomas Cho 0 7 0.5888 0.1873
150 Jason Miranda 0 6 0.5824 0.1588
151 Jennifer Wilson 0 6 0.5806 0.1583
152 Richard Conkle 0 17 0.5778 0.4465
153 Joseph Martin 0 7 0.5607 0.1784
154 Sheryl Claiborne-Smith 0 14 0.5598 0.3562
155 Donald Park 1 4 0.5532 0.1006
156 Min Choi 0 6 0.5513 0.1504
157 Lawrence Thuotte 1 4 0.5484 0.0997
158 Gabriel Quinones 0 9 0.5407 0.2212
159 Akilah Gamble 3 14 0.5318 0.3384
160 David Kim 0 2 0.5312 0.0483
160 Monte Henderson 0 2 0.5312 0.0483
162 Jamie Ainsleigh-Wong 0 6 0.5217 0.1423
163 Andrew Gray 1 18 0.5149 0.4213
164 Jay Kelly 0 7 0.5140 0.1635
165 Antonio Chapa 0 1 0.5000 0.0227
165 Vincent Kandian 0 4 0.5000 0.0909
165 Zachary Brosemer 0 1 0.5000 0.0227
168 Ashley Johnson 0 7 0.4835 0.1538
169 Ashlyn Dortch 0 5 0.4805 0.1092
170 Gabrieal Feiling 0 3 0.4474 0.0610
171 Brenton Jones 0 3 0.4286 0.0584
172 Jasprin Smith 0 1 0.3750 0.0170
172 Robert Epps 0 1 0.3750 0.0170

Adjusted Season Leaderboard

Season Leaderboard (Adjusted Season Percent)
Week 22
Season Rank Name Donuts Won Weeks Picked Season Percent Adj Season Percent Season Trend
1 Aubrey Conn 5 22 0.7298 0.7298
2 Michael Pacifico 2 22 0.7158 0.7158
3 Robert Gelo 2 22 0.7123 0.7123
4 Chris Papageorge 2 22 0.7053 0.7053
4 Marc Agne 3 22 0.7053 0.7053
6 Robert Cunningham 2 21 0.7286 0.6955
7 Christopher Sims 4 22 0.6947 0.6947
7 Jeremy Stieler 2 22 0.6947 0.6947
9 Jason Schattel 2 22 0.6912 0.6912
9 Randy Dick 1 22 0.6912 0.6912
11 Anthony Bloss 0 22 0.6842 0.6842
11 Nicole Dike 2 22 0.6842 0.6842
13 Edward Ford 2 22 0.6807 0.6807
13 Kevin Kehoe 1 22 0.6807 0.6807
15 Daniel Baller 1 22 0.6737 0.6737
15 Stephen Bush 3 22 0.6737 0.6737
17 George Sweet 2 22 0.6702 0.6702
18 Ryan Cvik 1 22 0.6667 0.6667
19 Antonio Mitchell 2 22 0.6596 0.6596
20 Cade Martinez 1 22 0.6561 0.6561
20 Montee Brown 3 22 0.6561 0.6561
22 Bruce Williams 2 21 0.6852 0.6541
23 Michael Moss 0 22 0.6526 0.6526
23 Richard Beeghley 2 22 0.6526 0.6526
25 William Schouviller 1 21 0.6815 0.6505
26 Keven Talbert 3 21 0.6803 0.6494
27 Pablo Burgosramos 2 21 0.6797 0.6488
28 David Dupree 1 21 0.6790 0.6481
29 Kevin Buettner 2 21 0.6766 0.6458
30 David Humes 0 22 0.6456 0.6456
31 Walter Archambo 1 22 0.6421 0.6421
32 Ramar Williams 2 21 0.6726 0.6420
33 Shawn Carden 1 21 0.6691 0.6387
34 Rachel Follo 4 22 0.6386 0.6386
34 Rachel Follo 4 22 0.6386 0.6386
36 Trevor Macgavin 1 22 0.6316 0.6316
37 Bradley Hobson 1 20 0.6926 0.6296
38 Jonathon Leslein 2 21 0.6580 0.6281
39 Michael Branson 1 21 0.6506 0.6210
40 Heather Ellenberger 1 20 0.6828 0.6207
41 Christopher Mulcahy 1 21 0.6494 0.6199
42 George Brown 2 21 0.6479 0.6185
43 Nicholas Cinco 1 20 0.6798 0.6180
44 Jeffrey Rudderforth 1 21 0.6468 0.6174
44 Kamar Morgan 1 21 0.6468 0.6174
46 Jeffrey Zornes 0 21 0.6458 0.6164
47 Melissa Printup 1 22 0.6140 0.6140
48 Louie Renew 2 21 0.6431 0.6139
49 Chester Todd 1 19 0.7105 0.6136
50 Zechariah Ziebarth 2 20 0.6667 0.6061
51 Rafael Torres 0 20 0.6640 0.6036
52 Wayne Schofield 2 21 0.6283 0.5997
53 Karen Richardson 2 20 0.6592 0.5993
54 Kristen White 1 21 0.6237 0.5954
55 Erik Neumann 1 19 0.6875 0.5938
56 Thomas Brenstuhl 2 19 0.6842 0.5909
57 Nicholas Nguyen 2 20 0.6482 0.5893
58 Brian Patterson 1 20 0.6445 0.5859
59 Jonathan Smith 1 20 0.6392 0.5811
60 Vincent Scannelli 0 20 0.6384 0.5804
61 Jason Jackson 0 20 0.6381 0.5801
62 Cheryl Brown 1 20 0.6378 0.5798
63 Scott Lefton 0 19 0.6706 0.5792
64 Marcus Evans 0 21 0.6059 0.5784
65 Brayant Rivera 0 19 0.6691 0.5779
66 James Small 0 20 0.6353 0.5775
67 Terry Hardison 1 20 0.6211 0.5646
68 Daniel Major 1 19 0.6513 0.5625
69 Jared Kaanga 0 20 0.6166 0.5605
70 Darvin Graham 1 19 0.6456 0.5576
71 Diance Durand 1 20 0.6125 0.5568
72 Gary Lawrence 1 20 0.6079 0.5526
73 Brian Hollmann 2 18 0.6742 0.5516
74 Bunnaro Sun 0 19 0.6379 0.5509
75 Nathan Brown 1 17 0.7094 0.5482
76 David Plate 0 18 0.6608 0.5407
77 Paul Seitz 1 18 0.6577 0.5381
78 Jennifer Arty 1 18 0.6543 0.5353
79 Nahir Shepard 1 18 0.6459 0.5285
80 Michael Moore 1 18 0.6453 0.5280
81 Bryson Scott 1 17 0.6820 0.5270
82 Jennifer Bouland 0 17 0.6803 0.5257
83 Matthew Schultz 0 17 0.6758 0.5222
84 Thomas Mccoy 0 18 0.6360 0.5204
85 Jack Wheeler 0 19 0.6024 0.5203
86 Anthony Brinson 1 18 0.6356 0.5200
87 Darryle Sellers 0 17 0.6680 0.5162
88 Brittany Pillar 2 15 0.7557 0.5152
89 Earl Dixon 1 17 0.6652 0.5140
90 Patrick Tynan 2 16 0.7054 0.5130
91 Ronald Schmidt 1 18 0.6245 0.5110
92 Randolph Tidd 1 16 0.7025 0.5109
93 Shaun Dahl 1 17 0.6602 0.5102
94 Gregory Brown 2 16 0.7000 0.5091
95 Matthew Olguin 0 18 0.6221 0.5090
96 Michelle Fraterrigo 1 17 0.6558 0.5068
97 Steward Hogans 3 17 0.6524 0.5041
98 Robert Lynch 0 18 0.6160 0.5040
99 Robert Martin 2 18 0.6144 0.5027
100 Clevante Granville 0 17 0.6500 0.5023
101 Pamela Augustine 0 17 0.6486 0.5012
102 Daniel Halse 0 16 0.6612 0.4809
103 George Mancini 0 16 0.6542 0.4758
104 Karen Coleman 0 15 0.6830 0.4657
105 Steven Webster 1 17 0.5942 0.4592
106 Anthony Rockemore 0 16 0.6175 0.4491
107 Noah Gosswiller 1 15 0.6584 0.4489
108 Richard Conkle 0 17 0.5778 0.4465
109 Kyle May 0 16 0.6087 0.4427
110 Brandon Parks 0 15 0.6465 0.4408
111 Joshua Tracey 1 15 0.6416 0.4375
112 Andrew Gray 1 18 0.5149 0.4213
113 Ryan Shipley 2 15 0.6000 0.4091
114 Michael Linder 0 12 0.7312 0.3988
115 Philip Driskill 1 13 0.6720 0.3971
116 Ryan Baum 0 13 0.6582 0.3889
117 Heather Kohler 0 12 0.6923 0.3776
118 Matthew Blair 0 11 0.7531 0.3766
119 Robert Sokol 0 12 0.6705 0.3657
120 Keisha Vasquez 1 13 0.6100 0.3605
121 Megan Fitzgerald 0 13 0.6061 0.3582
122 Kenneth Nielsen 0 13 0.6049 0.3574
123 Sheryl Claiborne-Smith 0 14 0.5598 0.3562
124 Yiming Hu 0 12 0.6278 0.3424
125 Akilah Gamble 3 14 0.5318 0.3384
126 Jose Torres Mendoza 0 12 0.6111 0.3333
127 Travis Delagardelle 1 11 0.6627 0.3314
128 Amy Asberry 0 11 0.6347 0.3174
129 Steven Maisonneuve 1 9 0.7231 0.2958
130 Paul Presti 0 10 0.6358 0.2890
131 Jeremy Mounce 0 9 0.6935 0.2837
132 Derrick Elam 0 10 0.5973 0.2715
133 Tara Bridgett 0 8 0.6320 0.2298
134 Gabriel Quinones 0 9 0.5407 0.2212
135 Desmond Jenkins 0 7 0.6168 0.1963
136 Jordan Forwood 0 7 0.6122 0.1948
137 Thomas Cho 0 7 0.5888 0.1873
138 Joseph Martin 0 7 0.5607 0.1784
139 Jonathan Knight 0 6 0.6022 0.1642
140 Jay Kelly 0 7 0.5140 0.1635
141 Kevin Green 0 6 0.5978 0.1630
142 Jason Miranda 0 6 0.5824 0.1588
143 Jennifer Wilson 0 6 0.5806 0.1583
144 Ashley Johnson 0 7 0.4835 0.1538
145 Min Choi 0 6 0.5513 0.1504
146 Jamie Ainsleigh-Wong 0 6 0.5217 0.1423
147 David Hadley 0 5 0.6104 0.1387
148 Wayne Gokey 0 5 0.6026 0.1370
149 George Hall 1 4 0.6596 0.1199
150 Ashlyn Dortch 0 5 0.4805 0.1092
151 Cherylynn Vidal 0 4 0.5938 0.1080
152 Donald Park 1 4 0.5532 0.1006
153 Lawrence Thuotte 1 4 0.5484 0.0997
154 Jeremy Krammes 0 3 0.6957 0.0949
155 Ryan Wiggins 1 3 0.6875 0.0938
156 Vincent Kandian 0 4 0.5000 0.0909
157 Terrence Lee 0 2 0.6897 0.0627
158 Gabrieal Feiling 0 3 0.4474 0.0610
159 Brenton Jones 0 3 0.4286 0.0584
160 Adam Konkle 0 2 0.5938 0.0540
160 Jeffrey Dusza 0 2 0.5938 0.0540
162 David Kim 0 2 0.5312 0.0483
162 Monte Henderson 0 2 0.5312 0.0483
164 Clayton Grimes 0 1 0.8750 0.0398
165 Tanaysa Henderson 0 1 0.8571 0.0390
166 Brian Holder 0 1 0.7500 0.0341
166 Sandra Carter 0 1 0.7500 0.0341
166 Wallace Savage 0 1 0.7500 0.0341
169 Daniel Gray 0 1 0.6875 0.0312
170 Antonio Chapa 0 1 0.5000 0.0227
170 Zachary Brosemer 0 1 0.5000 0.0227
172 Jasprin Smith 0 1 0.3750 0.0170
172 Robert Epps 0 1 0.3750 0.0170

Data

---
title: "2024 NFL Moneyline Picks"
output: 
  flexdashboard::flex_dashboard:
    theme:
      version: 4
      bootswatch: spacelab
    orientation: rows
    vertical_layout: fill
    social: ["menu"]
    source_code: embed
    navbar:
      - { title: "Created by: Daniel Baller", icon: "fa-github", href: "https://github.com/danielpballer"  }
---


```{r setup, include=FALSE}
#    source_code: embed
library(flexdashboard)
library(tidyverse)
library(data.table)
library(formattable)
library(ggpubr)
library(ggrepel)
library(gt)
library(glue)
library(ggthemes)
library(hrbrthemes)
library(sparkline)
library(plotly)
library(htmlwidgets)
library(mdthemes)
library(ggtext)
library(ggnewscale)
library(DT)
source("./Functions/functions2.R")

thematic::thematic_rmd(font = "auto")

# Remove line 211 before next season.
```

```{r Reading in our picks files, include=FALSE}
current_week = 22 #Set what week it is
week_1 = read_csv("./CSV_Data_Files/2024 NFL Week 1.csv") %>% 
  mutate(Name = str_to_title(Name))
week_2 = read_csv("./CSV_Data_Files/2024 NFL Week 2.csv")%>% 
  mutate(Name = str_to_title(Name))
week_3 = read_csv("./CSV_Data_Files/2024 NFL Week 3.csv")%>% 
  mutate(Name = str_to_title(Name))
week_4 = read_csv("./CSV_Data_Files/2024 NFL Week 4.csv")%>%
 mutate(Name = str_to_title(Name))
week_5 = read_csv("./CSV_Data_Files/2024 NFL Week 5.csv")%>% 
  mutate(Name = str_to_title(Name))
week_6 = read_csv("./CSV_Data_Files/2024 NFL Week 6.csv")%>% 
  mutate(Name = str_to_title(Name))
week_7 = read_csv("./CSV_Data_Files/2024 NFL Week 7.csv")%>% 
  mutate(Name = str_to_title(Name))
week_8 = read_csv("./CSV_Data_Files/2024 NFL Week 8.csv")%>% 
  mutate(Name = str_to_title(Name))
 week_9 = read_csv("./CSV_Data_Files/2024 NFL Week 9.csv")%>% 
  mutate(Name = str_to_title(Name))
week_10 = read_csv("./CSV_Data_Files/2024 NFL Week 10.csv")%>% 
  mutate(Name = str_to_title(Name))
week_11 = read_csv("./CSV_Data_Files/2024 NFL Week 11.csv")%>% 
  mutate(Name = str_to_title(Name))
week_12 = read_csv("./CSV_Data_Files/2024 NFL Week 12.csv")%>% 
  mutate(Name = str_to_title(Name))
week_13 = read_csv("./CSV_Data_Files/2024 NFL Week 13.csv")%>% 
  mutate(Name = str_to_title(Name))
week_14 = read_csv("./CSV_Data_Files/2024 NFL Week 14.csv")%>% 
  mutate(Name = str_to_title(Name))
week_15 = read_csv("./CSV_Data_Files/2024 NFL Week 15.csv")%>% 
  mutate(Name = str_to_title(Name))
week_16 = read_csv("./CSV_Data_Files/2024 NFL Week 16.csv")%>% 
  mutate(Name = str_to_title(Name))
week_17 = read_csv("./CSV_Data_Files/2024 NFL Week 17.csv")%>% 
  mutate(Name = str_to_title(Name))
week_18 = read_csv("./CSV_Data_Files/2024 NFL Week 18.csv")%>% 
  mutate(Name = str_to_title(Name))
week_19 = read_csv("./CSV_Data_Files/2024 NFL Wild Card.csv")%>% 
  mutate(Name = str_to_title(Name))
week_20 = read_csv("./CSV_Data_Files/2024 NFL Divisional Week.csv")%>% 
  mutate(Name = str_to_title(Name))
week_21 = read_csv("./CSV_Data_Files/2024 NFL Conference Round.csv")%>% 
mutate(Name = str_to_title(Name))
week_22 = read_csv("./CSV_Data_Files/2024 NFL Super Bowl.csv")%>% 
  mutate(Name = str_to_title(Name))

#reading in scores
Scores = read_csv(glue::glue("./CSV_Data_Files/NFL_Scores_{current_week}.csv")) 

#reading in CBS Prediction Records
cbs = read_csv(glue::glue("./CSV_Data_Files/CBS_Experts_{current_week}.csv")) %>% 
  mutate(Percent = round(Percent,4))
cbs_season = read_csv(glue::glue("./CSV_Data_Files/CBS_Experts_Season_{current_week}.csv"))

#reading in ESPN Prediction Records
espn = read_csv(glue::glue("./CSV_Data_Files/ESPN_Experts_{current_week}.csv"))%>% 
  mutate(Percent = round(Percent,4))
espn_season = read_csv(glue::glue("./CSV_Data_Files/ESPN_Experts_Season_{current_week}.csv"))%>% 
  mutate(Percent = round(Percent,4))

#Odds not working for the 2024 season.  Need to fix scrape code for next year.
#Reading in the moneyline odds for each team and cleaning the team names
# odds_wk1 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_1.csv"))
# odds_wk2 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_2.csv"))
# odds_wk3 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_3.csv"))
# odds_wk4 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_4.csv"))
# odds_wk5 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_5.csv"))
# odds_wk6 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_6.csv"))
# odds_wk7 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_7.csv"))
# odds_wk8 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_8.csv"))
# odds_wk9 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_9.csv"))
# odds_wk10 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_10.csv"))
# odds_wk11 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_11.csv"))
# odds_wk12 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_12.csv"))
# odds_wk13 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_13.csv"))
# odds_wk14 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_14.csv"))
# odds_wk15 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_15.csv"))
# odds_wk16 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_16.csv"))
# odds_wk17 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_17.csv"))
# odds_wk18 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_18.csv"))
# odds_wk19 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_19.csv"))
# odds_wk20 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_20.csv"))
# odds_wk21 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_21.csv"))
# odds_wk22 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_22.csv"))

####################UPDATE THESE###############################
inst.picks = list(week_1, week_2, week_3, week_4, week_5, week_6, week_7, week_8 , week_9, week_10, week_11, week_12, week_13, week_14, week_15, week_16, week_17, week_18, week_19, week_20, week_21, week_22) #add in the additional weeks
#odds = rbind(odds_wk1, odds_wk2, odds_wk3, odds_wk4, odds_wk5, odds_wk6, odds_wk7, odds_wk8,
#              odds_wk9, odds_wk10, odds_wk11, odds_wk12) #add in the additional weeks
####################END OF UPDATE##############################

weeks = as.list(seq(1:current_week)) #creating a list of each week number
```

```{r read in scores clean data, include=FALSE}
#Cleaning Odds Data
# cl_odds = odds_cleaning(odds)

#Cleaning scores data
Scores = cleaning2(Scores)

#creating a list of winners for each week
winners = map(weeks, weekly_winners)

#creating a vector of this weeks winners
this_week = pull(winners[[length(winners)]])  

#Getting the number of games for each week
weekly_number_of_games = map_dbl(weeks, week_number_games)
```

```{r Group Predictions, include=FALSE}
#Creating the list of everyones predictions each week.
games = map(inst.picks, games_fn)

#Creating the prediction table.  
pred_table = map(games, pred_table_fn)

#Adding who won to the predictions
with_winners = map2(pred_table, winners, adding_winners)

#Creating results for each week.
results = map2(with_winners,weekly_number_of_games, results_fn)
```


```{r Displaying Group Results, echo=FALSE}
#Displaying the group results

inst_group_table = results[[length(results)]] %>% gt() %>% 
  cols_align(
    align = "center") %>% 
   tab_header(
    title = md("This Week's Predictions"),
    #subtitle = md(glue("Week {length(results)}"))
    ) %>% 
   tab_style(
    style = cell_text(color = "red", weight = "bold"),
    locations = cells_body(
      columns = c(Correct),
      rows = Correct =="No"
    )) %>% 
   tab_style(
    style = cell_text(color = "green", weight = "bold"),
    locations = cells_body(
      columns = c(Correct),
      rows = Correct =="Yes"
    )) %>% 
  tab_options(
    data_row.padding = px(3),
    container.height = "100%"
   )
```

```{r Weekly and season Group Results, include=FALSE}
# Printing the weekly and season win percentage     

#how many games correct, incorrect, and not picked each week
weekly_group_correct = map(results, weekly_group_correct_fn)  

#how many games were picked each week
weekly_games_picked = map2(weekly_group_correct, weekly_number_of_games, weekly_games_picked_fn)

#Calculating the number of correct picks for each week
weekly_group_correct_picks = map(weekly_group_correct, weekly_group_correct_picks_fn)

# Code to manually hard code in week where we get 0 games correct
# ##### Remove this line before next season 
weekly_group_correct_picks[[21]]=0

#Calculating weekly win percentage
weekly_win_percentage = map2(weekly_group_correct_picks, weekly_games_picked, weekly_win_percentage_fn)

#Calculating season win percentage
season_win_percentage = round(sum(unlist(weekly_group_correct_picks))/sum(unlist(weekly_games_picked)),4)

#Calculating number of games picked this season
season_games = sum(unlist(weekly_games_picked))

#calculating season wins
season_wins = sum(unlist(weekly_group_correct_picks))

#calculating the number of people who picked this week
Total = dim(inst.picks[[length(weeks)]])[1]
```

```{r plotting group results, include=FALSE}
#Previous Weeks
group_season_for_plotting = unlist(weekly_win_percentage) %>% as.data.frame() %>% 
  rename(`Win Percentage` = ".") %>% 
  add_column(Week = unlist(weeks))
```

```{r Plotting the group results, echo=FALSE}
inst_group_season_plot = group_season_for_plotting %>% 
ggplot(aes(x = as.factor(Week), y = `Win Percentage`))+
  geom_point()+
  geom_path(aes(x = Week))+
  ylim(c(0, 1)) +
  xlab("NFL Week") + 
  ylab("Correct Percentage")+
  ggtitle("Weekly Group Correct Percentage")+
  theme_classic()+
  theme(plot.title = element_text(hjust = 0.5, size = 18))
```

```{r beating cbs week, include=FALSE}
#Creating a list of correct percentages for each week.
cbs_weekly_percent = map(weeks, cbs_percent)

#Creating a list of how many cbs experts we beat each week.
cbs_experts_beat = map2(cbs_weekly_percent, weekly_win_percentage, experts_beat)

#Creating a list of how many cbs experts picked each week.  
cbs_experts_total = map(cbs_weekly_percent, experts_tot)
```

```{r beating cbs season, include=FALSE}
#Creating a list of correct percentages for each week.
cbs_season_percent = map(weeks, cbs_season_percent)

#Creating a list of how many cbs experts we beat each week.
cbs_experts_beat_season = map2(cbs_season_percent, season_win_percentage, experts_beat)

#Creating a list of how many cbs experts picked each week.  
cbs_experts_season_total = map(cbs_season_percent, experts_tot)
```

```{r beating ESPN week, include=FALSE}
#Creating a list of correct percentages for each week.
espn_weekly_percent = map(weeks, espn_percent)

#Creating a list of how many cbs experts we beat each week.
espn_experts_beat = map2(espn_weekly_percent, weekly_win_percentage, experts_beat)

#Creating a list of how many cbs experts picked each week.  
espn_experts_total = map(espn_weekly_percent, experts_tot)
```

```{r beating ESPN season, include=FALSE}
#Creating a list of correct percentages for each week.
espn_season_percent = map(weeks, espn_season_percent)

#Creating a list of how many cbs experts we beat each week.
espn_experts_beat_season = map2(espn_season_percent, season_win_percentage, experts_beat)

#Creating a list of how many cbs experts picked each week.  
espn_experts_season_total = map(espn_season_percent, experts_tot)
```

```{r individual results, include=FALSE}
#Creating a list of individual results for each week.
weekly_indiv = pmap(list(inst.picks, winners, weeks), indiv_weekly_pred)

#Combining each week into one dataframe and calculating percentage Correct for this week.  
full_season = weekly_indiv %>% reduce(full_join, by = "Name") %>% 
  mutate(Percent = round(pull(.[,ncol(.)]/weekly_number_of_games[[length(weekly_number_of_games)]]),4)) 

#Creating a dataframe with only the weekly picks
a = full_season %>% select(starts_with("Week"))

#Creating a vector of how many weeks each person picked over the season
tot_week = NULL
help = NULL
for (i in 1:dim(a)[1]){
  for(j in 1:length(a)){
    help[j] = ifelse(is.na(a[i,j])==T,0,1)
    tot_week[i] = sum(help)
  }
}

#Creating a vector of how many games each person picked over the season
tot_picks= NULL
help = NULL
for (i in 1:dim(a)[1]){
  for(j in 1:length(a)){
    help[j] = unlist(weekly_games_picked)[j]*ifelse(is.na(a[i,j])==T,0,1)
    tot_picks[i] = sum(help)
  }
}

#Creatign a vector of how many games each person picked correct over the season
tot_correct = NULL
help = NULL
for (i in 1:dim(a)[1]){
  tot_correct[i] = sum(a[i,], na.rm = T)
}

#adding how many weeks each person picked, season correct percentage, and adjusted season percentag to the data frame and sorting the data
indiv_disp = full_season %>% add_column(`Weeks Picked` = tot_week) %>%
  add_column(tot_correct)%>%
  add_column(tot_picks)%>%
  mutate(`Season Percent` = round(tot_correct/tot_picks,4))%>%
  mutate(`Adj Season Percent` = round(`Season Percent`*(tot_week/length(a)),4)) %>%
  select(-tot_correct, -tot_picks) %>%
  arrange(desc(Percent), desc(`Season Percent`)) %>%
  mutate(Percent = ifelse(is.na(Percent)==T, 0, Percent))
```


```{r individual percentages, include=FALSE}
#Calculating individual percentages for each week.
weekly_indiv_percent = map2(weekly_indiv, as.list(weekly_number_of_games), indiv_percent) %>% reduce(full_join, by = "Name")

weekly_indiv_percent_plot = weekly_indiv_percent %>% 
  pivot_longer(cols = starts_with("Week"), names_to = "Week", values_to = "Percent")%>%
  mutate(Percent = ifelse(is.na(Percent)==T, 0, Percent)) %>% 
  mutate(Week = as.factor(Week))

levels = NULL
for(i in 1:length(weeks)){
  levels[i] = glue("Week {i}")  
}

weekly_indiv_percent_plot = weekly_indiv_percent_plot %>%
  mutate(Week = factor(Week, levels))
```

```{r sparklines, include=FALSE}
#adding sparklines
plot_group = function(name, df){
  plot_object = 
    ggplot(data = df,
           aes(x = as.factor(Week), y=Percent, group = 1))+
    geom_path(size = 7)+
    scale_y_continuous(limits = c(0,1))+
    theme_void()+
    theme(legend.position = "none")
  return(plot_object)
}

sparklines = 
  weekly_indiv_percent_plot %>% 
  group_by(Name) %>% 
  nest() %>% 
  mutate(plot = map2(Name, data, plot_group)) %>% 
  select(-data)
  
indiv_disp_2 = indiv_disp %>% 
  inner_join(sparklines, by = "Name") %>% 
  mutate(`Season Trend` = NA)
```

```{r Printing Individual Table2, echo=FALSE}
# Printing the individual Table
indiv_table = indiv_disp_2 %>% gt() %>% 
  cols_align(
    align = "center") %>% 
   tab_header(
    title = md("Individual Results"),
    subtitle = md(glue("Week {length(weeks)}"))
    ) %>% 
   tab_style(
    style = cell_text(color = "red", weight = "bold"),
    locations = cells_body(
      columns = c(Percent),
      rows = Percent<.5
    )) %>% 
   tab_style(
    style = cell_text(color = "green", weight = "bold"),
    locations = cells_body(
      columns = c(Percent),
      rows = Percent>.5
    )) %>% 
     tab_style(
    style = cell_text(color = "red", weight = "bold"),
    locations = cells_body(
      columns = c(`Season Percent`),
      rows = `Season Percent`<.5
    )) %>% 
   tab_style(
    style = cell_text(color = "green", weight = "bold"),
    locations = cells_body(
      columns = c(`Season Percent`),
      rows = `Season Percent`>.5
    ))%>% 
     tab_style(
    style = cell_text(color = "red", weight = "bold"),
    locations = cells_body(
      columns = c(`Adj Season Percent`),
      rows = `Adj Season Percent`<.5
    )) %>% 
   tab_style(
    style = cell_text(color = "green", weight = "bold"),
    locations = cells_body(
      columns = c(`Adj Season Percent`),
      rows = `Adj Season Percent`>.5
    )) %>% 
  tab_options(
    container.width = pct(100),
    data_row.padding = px(1),
    container.height = "100%"
   ) %>%
    tab_spanner(
    label = "Weekly # Correct",
    columns = starts_with(c("Week "))
  ) %>% 
  text_transform(
    locations = cells_body(c(`Season Trend`)),
    fn = function(x){
      map(indiv_disp_2$plot, ggplot_image, height = px(30), aspect_ratio = 4)
                 }) %>%
  cols_hide(c(plot))

indiv_winners = indiv_disp_2 %>% filter(Percent == max(Percent)) %>% select(Name) %>% pull() %>% paste(collapse = ", ")
indiv_season = indiv_disp_2 %>% filter(`Season Percent` == max(`Season Percent`)) %>% select(Name) %>% pull() %>% paste(collapse = ", ")
indiv_season_adj = indiv_disp_2 %>% filter(`Adj Season Percent` == max(`Adj Season Percent`)) %>% select(Name) %>% pull()%>% paste(collapse = ", ")
```

```{r Printing Season Leaderboard, echo=FALSE}
# Printing the Season Leaderboard
  
season_leaderboard_disp = indiv_disp_2 %>% select(Name, starts_with("Week ")) %>% 
  pivot_longer(starts_with("Week"),names_to = "Week", values_to = "Correct") %>% 
  group_by(Week) %>% 
  mutate(Correct = case_when(is.na(Correct)==T~0, 
                             TRUE~Correct)) %>% 
  mutate(Donut = case_when(Correct==max(Correct)~1,
                           TRUE~0))  %>% 
  ungroup() %>% 
  group_by(Name) %>% 
  summarise(`Donuts Won` = sum(Donut)) %>% 
  #mutate(`Donuts Won` = strrep("award,", Donuts)) %>% 
  right_join(.,indiv_disp_2) %>% 
  select(-starts_with("Week "), -Percent) %>% 
  mutate(`Season Rank` = min_rank(desc(`Season Percent`)),.before = Name) %>% 
  arrange(`Season Rank`) 
  
season_leaderboard = season_leaderboard_disp %>% 
  gt() %>% 
  cols_align(
    align = "center") %>% 
   tab_header(
    title = md("Season Leaderboard (Season Percent)"),
    subtitle = md(glue("Week {length(weeks)}"))
    ) %>% 
  # fmt_icon(
  #   columns = `Donuts Won`,
  #   fill_color = "gold",
  # ) %>%
  tab_style(
    style = cell_text(color = "red", weight = "bold"),
    locations = cells_body(
      columns = c(`Season Percent`),
      rows = `Season Percent`<.5
    )) %>% 
   tab_style(
    style = cell_text(color = "green", weight = "bold"),
    locations = cells_body(
      columns = c(`Season Percent`),
      rows = `Season Percent`>.5
    ))%>% 
     tab_style(
    style = cell_text(color = "red", weight = "bold"),
    locations = cells_body(
      columns = c(`Adj Season Percent`),
      rows = `Adj Season Percent`<.5
    )) %>% 
   tab_style(
    style = cell_text(color = "green", weight = "bold"),
    locations = cells_body(
      columns = c(`Adj Season Percent`),
      rows = `Adj Season Percent`>.5
    )) %>% 
  tab_options(
    container.width = pct(100),
    data_row.padding = px(1),
    container.height = "100%"
   ) %>%
    tab_spanner(
    label = "Weekly # Correct",
    columns = starts_with(c("Week "))
  ) %>% 
  text_transform(
    locations = cells_body(c(`Season Trend`)),
    fn = function(x){
      map(season_leaderboard_disp$plot, ggplot_image, height = px(30), aspect_ratio = 4)
                 }) %>%
  cols_hide(columns = c(plot))
```

```{r Printing Adj Season Leaderboard, echo=FALSE}
# Printing the Adj Season Leaderboard
  
adj_season_leaderboard_disp = indiv_disp_2 %>% select(Name, starts_with("Week ")) %>% 
  pivot_longer(starts_with("Week"),names_to = "Week", values_to = "Correct") %>% 
  group_by(Week) %>% 
  mutate(Correct = case_when(is.na(Correct)==T~0, 
                             TRUE~Correct)) %>% 
  mutate(Donut = case_when(Correct==max(Correct)~1,
                           TRUE~0))  %>% 
  ungroup() %>% 
  group_by(Name) %>% 
  summarise(`Donuts Won` = sum(Donut)) %>% 
  #mutate(`Donuts Won` = strrep("award,", Donuts)) %>% 
  right_join(.,indiv_disp_2) %>% 
  select(-starts_with("Week "), -Percent) %>% 
  mutate(`Season Rank` = min_rank(desc(`Adj Season Percent`)),.before = Name) %>% 
  arrange(`Season Rank`)

adj_season_leaderboard = adj_season_leaderboard_disp %>% 
  gt() %>% 
  cols_align(
    align = "center") %>% 
   tab_header(
    title = md("Season Leaderboard (Adjusted Season Percent)"),
    subtitle = md(glue("Week {length(weeks)}"))
    ) %>% 
  # fmt_icon(
  #   columns = `Donuts Won`,
  #   fill_color = "gold",
  # ) %>%
  tab_style(
    style = cell_text(color = "red", weight = "bold"),
    locations = cells_body(
      columns = c(`Season Percent`),
      rows = `Season Percent`<.5
    )) %>% 
   tab_style(
    style = cell_text(color = "green", weight = "bold"),
    locations = cells_body(
      columns = c(`Season Percent`),
      rows = `Season Percent`>.5
    ))%>% 
     tab_style(
    style = cell_text(color = "red", weight = "bold"),
    locations = cells_body(
      columns = c(`Adj Season Percent`),
      rows = `Adj Season Percent`<.5
    )) %>% 
   tab_style(
    style = cell_text(color = "green", weight = "bold"),
    locations = cells_body(
      columns = c(`Adj Season Percent`),
      rows = `Adj Season Percent`>.5
    )) %>% 
  tab_options(
    container.width = pct(100),
    data_row.padding = px(1),
    container.height = "100%"
   ) %>%
    tab_spanner(
    label = "Weekly # Correct",
    columns = starts_with(c("Week "))
  ) %>% 
  text_transform(
    locations = cells_body(c(`Season Trend`)),
    fn = function(x){
      map(adj_season_leaderboard_disp$plot, ggplot_image, height = px(30), aspect_ratio = 4)
                 }) %>%
  cols_hide(columns = c(plot))
```


```{r instructor formattable, echo=FALSE}
improvement_formatter <- 
  formatter("span", 
            style = x ~ formattable::style(
              font.weight = "bold", 
              color = ifelse(x > .5, "green", ifelse(x < .5, "red", "black"))),
             x ~ icontext(ifelse(x == max(x), "star", ""), x))

indiv_disp_3 = indiv_disp_2 %>% select(-plot)
indiv_disp_3$`Season Trend` = apply(indiv_disp_3[,2:(1+length(weeks))], 1, FUN = function(x) as.character(htmltools::as.tags(sparkline(as.numeric(x), type = "line", chartRangeMin = 0, chartRangeMax = 1, fillColor = "white"))))

indiv_table_2 = as.htmlwidget(formattable(indiv_disp_3, 
                                align = c("l", rep("c", NROW(indiv_disp_3)-1)),
              list(`Season Percent` = color_bar("#FA614B"),
              `Season Percent`= improvement_formatter,
              `Adj Season Percent`= improvement_formatter)))
              
indiv_table_2$dependencies = c(indiv_table_2$dependencies, htmlwidgets:::widget_dependencies("sparkline", "sparkline"))
```

```{r Plotting individual results over the season2, eval=FALSE, include=FALSE, out.width="100%"}
#Creating the individual plot.  
inst_indiv_plots = weekly_indiv_percent_plot %>% 
  ggplot(aes(x = factor(Week), y = Percent, color = Name))+
  geom_point()+
  geom_path(aes(x = as.factor(Week), y = Percent, color = Name, 
                group = Name))+
  ylim(c(0, 1)) +
  labs(x = "NFL Week", 
       y = "Correct Percentage", 
       title = "Weekly Individual Correct Percentage")+
  facet_wrap(~Name)+
  theme_classic()+
  theme(legend.position = "none",
        plot.title = element_text(hjust = 0.5, size = 18),
        axis.text.x=element_text(angle =45, vjust = 1, hjust = 1))
```

```{r data for data page}
inst.data = map2(inst.picks, weeks, disp_data) %>% bind_rows()
```


```{r fivethirtyeight}
inst_538 = map(results, five38) %>% unlist() %>% sum()
```

```{r pregame, eval=FALSE, include=FALSE}
#Predictions for the week

#Creating the list of group predictions each week.
games = map(inst.picks, games_fn)

#Creating the prediction table.  
pred_table = map(games, pred_table_fn)

#Printing table of instructor predictions
pred_table[[length(pred_table)]] %>% mutate(Game = row_number()) %>% 
  rename(`Votes For` = votes_for, `Votes Against` = votes_against) %>% 
  gt() %>% 
  cols_align(
    align = "center") %>% 
   tab_header(
    title = md("This Week's Predictions"),
    subtitle = md(glue("Week {length(weeks)}"))
    ) %>% 
   tab_options(
    data_row.padding = px(3)
   )
```

Group Predictions
==========================================================================

Sidebar {.sidebar} 
-------------------------------------
#### CBS Sports

<font size="4">

This week we beat or tied `r cbs_experts_beat[[length(weeks)]]` of `r cbs_experts_total[[length(weeks)]]` CBS Sports' Experts.

For the season we are currently beating or tied with `r cbs_experts_beat_season[[length(weeks)]]` of `r cbs_experts_season_total[[length(weeks)]]` CBS Sports' Experts.
 
 </font>


#### ESPN

<font size="4">

We also beat or tied `r espn_experts_beat[[length(weeks)]]` of `r espn_experts_total[[length(weeks)]]` ESPN Experts.
 
For the season we are currently beating or tied with `r espn_experts_beat_season[[length(weeks)]]` of `r espn_experts_season_total[[length(weeks)]]` ESPN Experts.

</font>

Row
--------------------------------------

### Win percentage for the week

```{r}
inst_rate <- weekly_win_percentage[[length(weekly_win_percentage)]]*100
gauge(inst_rate, min = 0, max = 100, symbol = '%', gaugeSectors(
  success = c(55, 100), warning = c(40, 54), danger = c(0, 39)
))
```

### Season Win Percentage

```{r}
inst_season <- season_win_percentage*100
gauge(inst_season, min = 0, max = 100, symbol = '%', gaugeSectors(
  success = c(55, 100), warning = c(40, 54), danger = c(0, 39)
))
```

### Games Correct
```{r}
valueBox(value = season_wins,icon = "fa-trophy",caption = "Correct Games this Season")
```

### Games Picked
```{r}
valueBox(value = season_games,icon = "fa-clipboard-list",caption = "Games Picked this Season")
```

### Number of predictions
```{r}
valueBox(value = Total,icon = "fa-users",caption = "Predictions this week")
```

Row
--------------------------------------

### 

```{r}
inst_group_table
```

### 

```{r}
ggplotly(inst_group_season_plot) %>% 
  layout(title = list(y = .93, xref = "plot"),
         margin = list(t = 40))
```

Individual Predictions
==========================================================================


Sidebar {.sidebar} 
-------------------------------------

#### Best Picks of the Week.

<font size="4">

 `r indiv_winners`
 
 </font>
 
#### Best Season Correct Percentage
<font size="4">

`r indiv_season`
 
 </font>

#### Best Adjusted Season Correct Percentage
<font size="4">

`r indiv_season_adj`

 * Adjusted season percentage accounts for the number of weeks picked.
 
 </font>

row {.tabset}
--------------------------------------

### Individual Table
```{r}
indiv_table
```

<!--
### Individual Table2

```{r, out.height="100%"}
indiv_table_2
```

-->

<!--

### Individual Plots
```{r, out.width="100%"}
#ggplotly(inst_indiv_plots)
```

-->

### Season Leaderboard
```{r, out.width="100%"}
season_leaderboard
```

### Adjusted Season Leaderboard
```{r, out.width="100%"}
adj_season_leaderboard
```

Data
==========================================================================

```{r}
datatable(
  inst.data, extensions = 'Buttons', options = list(
    dom = 'Blfrtip',
    buttons = c('copy', 'csv', 'excel', 'pdf', 'print'),
    lengthMenue = list( c(10, 25, 50, 100, -1), c(10, 25, 50, 100, "All") )
  )
)
```