Overview
- Read in excel file with dynasty ADP and yahoo keeper league draft results to analyze the league
- Questions of interest:
- Did RB or WR cost more in auction?
- Is there parity in the league?
- Do ADP ranks correlate well with team finishes?
- Who has the best Keepers?
Load Packages
## Warning: package 'stringr' was built under R version 3.4.4
Functions
Read in XLSX files
## Warning: Expected 2 pieces. Additional pieces discarded in 198 rows [1, 2,
## 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, ...].
read in other file
Join dataframes
Some graphs


total wr drafted by team over 30$
| stephan |
2 |
| antonio |
1 |
| ej |
1 |
| fberg |
1 |
| jherm |
1 |
| kenny |
1 |
| steve |
1 |
| wild_dan |
1 |
total rb drafted by team over 30$
| ej |
2 |
| josh |
2 |
| Katz |
2 |
| miller |
2 |
| stephan |
2 |
| kenny |
1 |
| steve |
1 |
Analysis
- Wide receivers tend to cluster around 25$
- RB tend to cluster around 40$
Run summary stats
| RB |
32 |
| WR |
23 |
|
22 |
| QB |
18 |
| TE |
18 |
| RB |
32.04167 |
| WR |
26.83871 |
|
22.00000 |
| TE |
20.83333 |
| QB |
18.00000 |
## 'data.frame': 24 obs. of 8 variables:
## $ Player : chr "Melvin Gordon" "LeSean McCoy" "Isaiah Crowell" "Ameer Abdullah" ...
## $ team : chr " LAC" " Buf" " NYJ" " Det" ...
## $ pos : chr "RB" "RB" "RB" "RB" ...
## $ keeper_cost : num 30 41 0 0 0 0 0 0 0 0 ...
## $ auction_cost : num 30 41 36 25 43 25 50 35 36 19 ...
## $ Owner : chr "jherm" "stephan" "stephan" "wild_dan" ...
## $ Players already on Contract: num NA 51 NA NA NA NA NA NA NA NA ...
## $ Keeper_cost_2018 : num 35 51 38 27 45 27 52 37 38 21 ...
## 'data.frame': 31 obs. of 8 variables:
## $ Player : chr "DeAndre Hopkins" "Keenan Allen" "Julio Jones" "T.Y. Hilton" ...
## $ team : chr " Hou" " LAC" " Atl" " Ind" ...
## $ pos : chr "WR" "WR" "WR" "WR" ...
## $ keeper_cost : num 0 0 0 31 13 0 15 0 0 0 ...
## $ auction_cost : num 29 35 59 31 13 41 15 24 17 39 ...
## $ Owner : chr "jherm" "jherm" "stephan" "stephan" ...
## $ Players already on Contract: num NA NA NA 46 18 NA 20 NA NA NA ...
## $ Keeper_cost_2018 : num 31 37 61 46 18 43 20 26 19 41 ...

- Rb’s cost more auction dollars, in terms of both median and mean, than WR’s
## Warning: Expected 2 pieces. Missing pieces filled with `NA` in 1 rows
## [159].
## Warning: Expected 2 pieces. Additional pieces discarded in 11 rows [3, 11,
## 25, 47, 56, 61, 63, 95, 119, 122, 142].
## Warning: Expected 2 pieces. Missing pieces filled with `NA` in 12 rows [16,
## 33, 50, 67, 84, 101, 133, 134, 135, 152, 185, 200].
## Joining by: playername
- Looking at the distributions, you can see wr clustering around 20$.
Parity check
total wr drafted ADP <50
| fberg |
3 |
| miller |
3 |
| ej |
2 |
| jherm |
2 |
| josh |
2 |
| Katz |
2 |
| stephan |
2 |
| wild_dan |
2 |
| antonio |
1 |
| kenny |
1 |
| steve |
1 |
total rb drafted ADP <50
| ej |
3 |
| steve |
3 |
| josh |
2 |
| Katz |
2 |
| miller |
2 |
| adam |
1 |
| jherm |
1 |
| kenny |
1 |
RB AND WR DRAFTED UNDER 75 and 100
total wr drafted ADP <75
| Katz |
4 |
| fberg |
3 |
| jherm |
3 |
| josh |
3 |
| kenny |
3 |
| miller |
3 |
| stephan |
3 |
| steve |
3 |
| wild_dan |
3 |
| ej |
2 |
| antonio |
1 |
total rb drafted ADP <75
| ej |
4 |
| steve |
3 |
| josh |
2 |
| Katz |
2 |
| miller |
2 |
| stephan |
2 |
| adam |
1 |
| antonio |
1 |
| jherm |
1 |
| kenny |
1 |
| wild_dan |
1 |
total wr drafted ADP <100
| fberg |
4 |
| jherm |
4 |
| Katz |
4 |
| miller |
4 |
| wild_dan |
4 |
| josh |
3 |
| kenny |
3 |
| stephan |
3 |
| steve |
3 |
| antonio |
2 |
| ej |
2 |
total rb drafted ADP <100
| ej |
4 |
| miller |
4 |
| steve |
4 |
| antonio |
3 |
| fberg |
2 |
| josh |
2 |
| Katz |
2 |
| stephan |
2 |
| adam |
1 |
| jherm |
1 |
| kenny |
1 |
| wild_dan |
1 |
ALL PLAYERS DRAFTED
total players drafted ADP <50
| ej |
5 |
| miller |
5 |
| fberg |
4 |
| jherm |
4 |
| josh |
4 |
| Katz |
4 |
| steve |
4 |
| antonio |
3 |
| wild_dan |
3 |
| adam |
2 |
| kenny |
2 |
| stephan |
2 |
total players drafted ADP <100
| miller |
10 |
| fberg |
8 |
| Katz |
8 |
| steve |
8 |
| antonio |
7 |
| jherm |
7 |
| ej |
6 |
| wild_dan |
6 |
| josh |
5 |
| kenny |
5 |
| stephan |
5 |
| adam |
2 |
## Classes 'tbl_df', 'tbl' and 'data.frame': 12 obs. of 2 variables:
## $ Owner : chr "ej" "miller" "fberg" "jherm" ...
## $ last_year_finish: chr "7" "9" "3" "1" ...
## Joining by: Owner
## Joining by: Owner
total players drafted ADP <50 and team finish
| ej |
5 |
7 |
| miller |
5 |
9 |
| fberg |
4 |
3 |
| jherm |
4 |
1 |
| josh |
4 |
2 |
| Katz |
4 |
10 |
| steve |
4 |
6 |
| antonio |
3 |
4 |
| wild_dan |
3 |
8 |
| adam |
2 |
11 |
| kenny |
2 |
12 |
| stephan |
2 |
5 |
total players drafted ADP <100 and team finish
| miller |
10 |
9 |
| fberg |
8 |
3 |
| Katz |
8 |
10 |
| steve |
8 |
6 |
| antonio |
7 |
4 |
| jherm |
7 |
1 |
| ej |
6 |
7 |
| wild_dan |
6 |
8 |
| josh |
5 |
2 |
| kenny |
5 |
12 |
| stephan |
5 |
5 |
| adam |
2 |
11 |
- There seems to be alot of parity with most of the teams having similar amounts of top players
Team FBERG
FBERG TEAM
| Ben Roethlisberger |
Pit |
QB |
0 |
12 |
fberg |
NA |
14 |
179 |
36 |
| A.J. Green |
Cin |
WR |
0 |
53 |
fberg |
NA |
55 |
21 |
29 |
| Doug Baldwin |
Sea |
WR |
13 |
13 |
fberg |
23 |
23 |
41 |
29 |
| Tyreek Hill |
KC |
WR |
8 |
8 |
fberg |
13 |
13 |
23 |
24 |
| Dion Lewis |
Ten |
RB |
0 |
1 |
fberg |
NA |
8 |
79 |
27 |
| Theo Riddick |
Det |
RB |
0 |
6 |
fberg |
NA |
8 |
162 |
27 |
| Jimmy Graham |
GB |
TE |
8 |
8 |
fberg |
13 |
13 |
100 |
31 |
| Michael Crabtree |
Bal |
WR |
0 |
27 |
fberg |
NA |
29 |
97 |
30 |
| Jamaal Williams |
GB |
RB |
0 |
1 |
fberg |
NA |
8 |
109 |
23 |
| Tarik Cohen |
Chi |
RB |
0 |
1 |
fberg |
NA |
8 |
84 |
22 |
| O.J. Howard |
TB |
TE |
0 |
3 |
fberg |
NA |
8 |
88 |
23 |
| Marquise Goodwin |
SF |
WR |
0 |
0 |
fberg |
NA |
8 |
112 |
27 |
| Rod Smith |
Dal |
RB |
0 |
0 |
fberg |
NA |
8 |
NA |
NA |
| Keelan Cole |
Jax |
WR |
0 |
0 |
fberg |
NA |
8 |
158 |
25 |
| Harrison Butker |
KC |
K |
0 |
0 |
fberg |
NA |
8 |
NA |
NA |
| Chicago NA |
Chi |
DEF |
0 |
0 |
fberg |
NA |
8 |
NA |
NA |
| Aaron Rodgers |
GB |
QB |
26 |
26 |
fberg |
31 |
31 |
42 |
34 |
lets look at adp average by team
total players drafted mean ADP team finish
| josh |
74.12 |
2 |
| ej |
81.91 |
7 |
| steve |
82.77 |
6 |
| stephan |
84.80 |
5 |
| kenny |
85.67 |
12 |
| miller |
89.00 |
9 |
| fberg |
92.50 |
3 |
| antonio |
101.31 |
4 |
| jherm |
103.25 |
1 |
| wild_dan |
107.50 |
8 |
| Katz |
108.71 |
10 |
| adam |
146.71 |
11 |
total players drafted median ADP and team finish
| josh |
53.5 |
2 |
| ej |
68.0 |
7 |
| kenny |
69.0 |
12 |
| miller |
83.0 |
9 |
| Katz |
85.0 |
10 |
| steve |
85.0 |
6 |
| jherm |
87.0 |
1 |
| antonio |
89.0 |
4 |
| stephan |
90.0 |
5 |
| fberg |
92.5 |
3 |
| wild_dan |
104.0 |
8 |
| adam |
133.0 |
11 |
- Jherm as the champion seems to have way over performed his team ADP in terms of median and mean
- Katz has a large difference in median and mean, likely because he rostered high upside players at end of the season when he didn’t make the playoffs
- EJ finished outside of the playoffs, but had one of the strongest teams
- Adam has the worst team in terms of mean and median
- Kenny performed substantially worse than his ADP would indicate
- Josh appears to have the best team
Who Has The Best keepers?
total top 15 players rostered
| steve |
4 |
| josh |
3 |
| jherm |
2 |
| antonio |
1 |
| ej |
1 |
| Katz |
1 |
| miller |
1 |
| stephan |
1 |
total top 25 players rostered
| steve |
4 |
| jherm |
3 |
| josh |
3 |
| ej |
2 |
| fberg |
2 |
| Katz |
2 |
| kenny |
2 |
| miller |
2 |
| antonio |
1 |
| stephan |
1 |
| wild_dan |
1 |
top 50 players and keeper cost
| DeAndre Hopkins |
jherm |
31 |
2 |
| Keenan Allen |
jherm |
37 |
13 |
| Melvin Gordon |
jherm |
35 |
20 |
| Travis Kelce |
jherm |
38 |
29 |
| Julio Jones |
stephan |
61 |
15 |
| T.Y. Hilton |
stephan |
46 |
32 |
| Stefon Diggs |
wild_dan |
20 |
24 |
| Alshon Jeffery |
wild_dan |
26 |
39 |
| Evan Engram |
wild_dan |
8 |
40 |
| Adam Thielen |
ej |
8 |
34 |
| Brandin Cooks |
ej |
41 |
26 |
| Todd Gurley |
ej |
45 |
3 |
| Jordan Howard |
ej |
13 |
35 |
| Dalvin Cook |
ej |
52 |
17 |
| Mike Evans |
miller |
38 |
9 |
| Sammy Watkins |
miller |
24 |
49 |
| Leonard Fournette |
miller |
37 |
16 |
| Corey Davis |
miller |
18 |
28 |
| Derrick Henry |
miller |
21 |
38 |
| Michael Thomas |
steve |
13 |
10 |
| Alvin Kamara |
steve |
8 |
11 |
| Ezekiel Elliott |
steve |
60 |
4 |
| David Johnson |
steve |
23 |
8 |
| Jarvis Landry |
Katz |
20 |
33 |
| Devonta Freeman |
Katz |
28 |
30 |
| Joe Mixon |
Katz |
36 |
22 |
| Odell Beckham |
Katz |
38 |
1 |
| Josh Gordon |
josh |
8 |
43 |
| Le’Veon Bell |
josh |
60 |
7 |
| Kareem Hunt |
josh |
53 |
12 |
| Davante Adams |
josh |
13 |
14 |
| Zach Ertz |
antonio |
18 |
45 |
| Antonio Brown |
antonio |
74 |
5 |
| Carson Wentz |
antonio |
8 |
47 |
| Christian McCaffrey |
kenny |
45 |
18 |
| Amari Cooper |
kenny |
52 |
19 |
| A.J. Green |
fberg |
55 |
21 |
| Doug Baldwin |
fberg |
23 |
41 |
| Tyreek Hill |
fberg |
13 |
23 |
| Aaron Rodgers |
fberg |
31 |
42 |
| Rob Gronkowski |
adam |
42 |
36 |
| Mark Ingram |
adam |
23 |
48 |
- Steve has the best keepers, 4 top 15 players rostered!!
- Stephan and kenny have poor keeper options
- Katz and jherm have the 2nd and 3rd best keeper options
- EJ and miller have the most keeper options, although they are mostly expensive