In [15]:
%matplotlib inline
import pandas as pd
import matplotlib as mp
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.patches as mpatches
qb_games = pd.read_csv('qb_games.csv')
#qb_games = qb_games.groupby(['Year'])
qb_games.head(10)
Out[15]:
Name
Year
Career Year
Date
Team
Opp
Result
Pass Att
Pass Cmp
Pass Pct
...
Pass Int
Pass Lg
Pass Sack
Pass Rate
Rush Att
Rush Yds
Rush Avg
Rush Lg
Rush TD
Rush FD
0
feeley, aj
2002
2
11/25/02
Phi
@ SF
W, 38-17
3
3
100.0
...
0
8
0/0
129.9
2
-3
-1.5
-1
0
0
1
feeley, aj
2002
2
12/01/02
Phi
Stl
W, 10-3
30
14
46.7
...
0
41
3/24
66.1
2
3
1.5
4
0
0
2
feeley, aj
2002
2
12/08/02
Phi
@ Sea
W, 27-20
35
21
60.0
...
1
22
0/0
81.8
3
0
0.0
1
0
0
3
feeley, aj
2002
2
12/15/02
Phi
Was
W, 34-21
28
16
57.1
...
1
53
2/10
91.4
2
5
2.5
6
0
0
4
feeley, aj
2002
2
12/21/02
Phi
@ Dal
W, 27-3
33
19
57.6
...
2
41
1/8
66.9
2
2
1.0
4
0
0
5
feeley, aj
2002
2
12/28/02
Phi
@ NYG
L, 10-7
25
13
52.0
...
1
35
1/6
53.8
1
-1
-1.0
-1
0
0
6
feeley, aj
2001
1
01/06/02
Phi
@ TB
W, 17-13
14
10
71.4
...
1
27
0/0
114.0
0
0
0.0
0
0
0
7
feeley, aj
2004
4
09/11/04
Mia
Ten
L, 17-7
31
21
67.7
...
1
19
2/11
78.4
0
0
0.0
0
0
0
8
feeley, aj
2004
4
09/19/04
Mia
@ Cin
L, 16-13
39
21
53.8
...
2
37
2/17
57.4
0
0
0.0
0
0
0
9
feeley, aj
2004
4
09/26/04
Mia
Pit
L, 13-3
27
13
48.1
...
2
36
3/20
32.5
0
0
0.0
0
0
0
10 rows × 23 columns
In [30]:
qb_games['Fantasy Points'] = (qb_games['Pass Yds']/25) + (6 * qb_games['Pass TD']) - (2 * qb_games['Pass Int']) + (qb_games['Rush Yds'] /10) + (6 * qb_games['Rush TD'])
qb_fantasy = qb_games[['Name','Career Year', 'Year', 'Date', 'Pass Yds', 'Pass TD', 'Pass Int', 'Rush Yds', 'Rush TD', 'Fantasy Points']]
qb_fantasy_2016 = qb_fantasy.loc[qb_fantasy['Year'] == 2016]
ryan_2016 = qb_fantasy_2016.loc[qb_fantasy_2016['Name'] == 'ryan, matt']
print("done!")
print(type(ryan_2016))
ryan_2016
done!
<class 'pandas.core.frame.DataFrame'>
Out[30]:
Name
Career Year
Year
Date
Pass Yds
Pass TD
Pass Int
Rush Yds
Rush TD
Fantasy Points
4192
ryan, matt
9
2016
09/11/16
334
2
0
0
0
25.36
4193
ryan, matt
9
2016
09/18/16
396
3
1
0
0
31.84
4194
ryan, matt
9
2016
09/26/16
240
2
0
0
0
21.60
4195
ryan, matt
9
2016
10/02/16
503
4
1
0
0
42.12
4196
ryan, matt
9
2016
10/09/16
267
1
0
0
0
16.68
4197
ryan, matt
9
2016
10/16/16
335
3
1
0
0
29.40
4198
ryan, matt
9
2016
10/23/16
273
1
1
0
0
14.92
4199
ryan, matt
9
2016
10/30/16
288
3
0
0
0
29.52
4200
ryan, matt
9
2016
11/03/16
344
4
0
0
0
37.76
4201
ryan, matt
9
2016
11/13/16
267
1
1
0
0
14.68
4202
ryan, matt
9
2016
11/27/16
269
2
1
0
0
20.76
4203
ryan, matt
9
2016
12/04/16
297
1
1
0
0
15.88
4204
ryan, matt
9
2016
12/11/16
237
3
0
0
0
27.48
4205
ryan, matt
9
2016
12/18/16
286
2
0
0
0
23.44
4206
ryan, matt
9
2016
12/24/16
277
2
0
0
0
23.08
4207
ryan, matt
9
2016
01/01/17
331
4
0
0
0
37.24
4208
ryan, matt
9
2016
01/14/17
338
3
0
0
0
31.52
In [31]:
ryan_2016 = ryan_2016.groupby(['Year', 'Career Year']).sum()
ryan_2016
Out[31]:
Pass Yds
Pass TD
Pass Int
Rush Yds
Rush TD
Fantasy Points
Year
Career Year
2016
9
5282
41
7
0
0
443.28
In [22]:
rodgers_2016 = qb_fantasy_2016.loc[qb_fantasy_2016['Name'] == 'rodgers, aaron']
print("done!")
rodgers_2016
done!
Out[22]:
Name
Career Year
Year
Date
Pass Yds
Pass TD
Pass Int
Rush Yds
Rush TD
Fantasy Points
166
rodgers, aaron
12
2016
09/11/16
199
2
0
0
0
19.96
167
rodgers, aaron
12
2016
09/18/16
213
1
1
0
0
12.52
168
rodgers, aaron
12
2016
09/25/16
205
4
0
0
0
32.20
169
rodgers, aaron
12
2016
10/09/16
259
2
2
0
0
18.36
170
rodgers, aaron
12
2016
10/16/16
294
1
1
0
0
15.76
171
rodgers, aaron
12
2016
10/20/16
326
3
0
0
0
31.04
172
rodgers, aaron
12
2016
10/30/16
246
4
0
0
0
33.84
173
rodgers, aaron
12
2016
11/06/16
297
3
1
0
0
27.88
174
rodgers, aaron
12
2016
11/13/16
371
2
2
0
0
22.84
175
rodgers, aaron
12
2016
11/20/16
351
3
0
0
0
32.04
176
rodgers, aaron
12
2016
11/28/16
313
2
0
0
0
24.52
177
rodgers, aaron
12
2016
12/04/16
209
2
0
0
0
20.36
178
rodgers, aaron
12
2016
12/11/16
246
3
0
0
0
27.84
179
rodgers, aaron
12
2016
12/18/16
252
0
0
0
0
10.08
180
rodgers, aaron
12
2016
12/24/16
347
4
0
0
0
37.88
181
rodgers, aaron
12
2016
01/01/17
300
4
0
0
0
36.00
182
rodgers, aaron
12
2016
01/08/17
362
4
0
0
0
38.48
183
rodgers, aaron
12
2016
01/15/17
356
2
1
0
0
24.24
In [23]:
rodgers_2016 = rodgers_2016.groupby(['Year', 'Career Year']).sum()
rodgers_2016
Out[23]:
Pass Yds
Pass TD
Pass Int
Rush Yds
Rush TD
Fantasy Points
Year
Career Year
2016
12
5146
46
8
0
0
465.84
In [32]:
newton_2016 = qb_fantasy_2016.loc[qb_fantasy_2016['Name'] == 'newton, cam']
print("done!")
newton_2016
done!
Out[32]:
Name
Career Year
Year
Date
Pass Yds
Pass TD
Pass Int
Rush Yds
Rush TD
Fantasy Points
892
newton, cam
6
2016
09/08/16
194
1
1
54
1
23.16
893
newton, cam
6
2016
09/18/16
353
4
1
37
0
39.82
894
newton, cam
6
2016
09/25/16
262
0
3
26
1
13.08
895
newton, cam
6
2016
10/02/16
165
1
0
30
0
15.60
896
newton, cam
6
2016
10/16/16
322
2
1
1
1
28.98
897
newton, cam
6
2016
10/30/16
212
0
0
43
0
12.78
898
newton, cam
6
2016
11/06/16
225
1
0
16
0
16.60
899
newton, cam
6
2016
11/13/16
261
1
1
54
1
25.84
900
newton, cam
6
2016
11/17/16
192
1
0
7
0
14.38
901
newton, cam
6
2016
11/27/16
246
2
1
6
1
26.44
902
newton, cam
6
2016
12/04/16
182
1
0
12
0
14.48
903
newton, cam
6
2016
12/11/16
160
1
1
31
0
13.50
904
newton, cam
6
2016
12/19/16
300
2
0
0
0
24.00
905
newton, cam
6
2016
12/24/16
198
1
2
36
0
13.52
906
newton, cam
6
2016
01/01/17
237
1
3
6
0
10.08
In [33]:
newton_2016 = newton_2016.groupby(['Year', 'Career Year']).sum()
newton_2016
Out[33]:
Pass Yds
Pass TD
Pass Int
Rush Yds
Rush TD
Fantasy Points
Year
Career Year
2016
6
3509
19
14
359
5
292.26
Content source: JohnPHogan/FantasyFootball
Similar notebooks: