06 Sep 2012
Hey folks. I mentioned a few days ago that the NFL is now making snap data available to the media a few hours after each game. Like the all-22 film, this is one of the Holy Grails of NFL stat analysis that is finally public in 2012. We're still playing around with some fun new ways to display this data on a weekly basis, but I'm so excited about having it that I wanted to share with the class.
Every Tuesday afternoon, we'll be able to put up a table that looks something like this. Thanks to Abe vander Bent for helping write a parser that grabs the data for us from the NFL's media website. This table is in order by snap total, but I may decide to display things separated into offense and defense (with a third group for guys who play special teams only). We're also playing around with ideas for sortable tables, an oft-requested feature for FO. (Right now only the tables in FO Premium are sortable.)
| WK | TEAM | PLAYER | POS | ACT |
TOT SNAP |
OFF SNAP |
OFF SNAP PCT |
DEF SNAP |
DEF SNAP PCT |
ST SNAP |
ST SNAP PCT |
| 1 | DAL | 71-N.Livings | LG | TRUE | 72 | 68 | 100% | 0 | 0% | 4 | 18% |
| 1 | DAL | 73-M.Bernadeau | RG | TRUE | 72 | 68 | 100% | 0 | 0% | 4 | 18% |
| 1 | DAL | 68-D.Free | RT | TRUE | 72 | 68 | 100% | 0 | 0% | 4 | 18% |
| 1 | DAL | 63-R.Cook | C/G | TRUE | 69 | 65 | 96% | 0 | 0% | 4 | 18% |
| 1 | DAL | 77-T.Smith | LT | TRUE | 68 | 68 | 100% | 0 | 0% | 0 | 0% |
| 1 | DAL | 9-T.Romo | QB | TRUE | 68 | 68 | 100% | 0 | 0% | 0 | 0% |
| 1 | DAL | 43-G.Sensabaugh | FS | TRUE | 67 | 0 | 0% | 56 | 100% | 11 | 50% |
| 1 | DAL | 42-B.Church | SS | TRUE | 64 | 0 | 0% | 56 | 100% | 8 | 36% |
| 1 | DAL | 88-D.Bryant | WR | TRUE | 60 | 58 | 85% | 0 | 0% | 2 | 9% |
| 1 | DAL | 82-J.Witten | TE | TRUE | 57 | 53 | 78% | 0 | 0% | 4 | 18% |
| 1 | DAL | 19-M.Austin | WR | TRUE | 57 | 57 | 84% | 0 | 0% | 0 | 0% |
| 1 | DAL | 50-S.Lee | WLB | TRUE | 56 | 0 | 0% | 56 | 100% | 0 | 0% |
| 1 | DAL | 93-A.Spencer | SLB | TRUE | 55 | 0 | 0% | 55 | 98% | 0 | 0% |
| 1 | DAL | 39-B.Carr | LCB | TRUE | 54 | 0 | 0% | 54 | 96% | 0 | 0% |
| 1 | DAL | 24-M.Claiborne | RCB | TRUE | 54 | 0 | 0% | 54 | 96% | 0 | 0% |
| 1 | DAL | 29-D.Murray | RB | TRUE | 52 | 52 | 76% | 0 | 0% | 0 | 0% |
| 1 | DAL | 94-D.Ware | JLB | TRUE | 51 | 0 | 0% | 51 | 91% | 0 | 0% |
| 1 | DAL | 97-J.Hatcher | DT | TRUE | 43 | 0 | 0% | 43 | 77% | 0 | 0% |
| 1 | DAL | 47-L.Vickers | FB | TRUE | 40 | 29 | 43% | 0 | 0% | 11 | 50% |
| 1 | DAL | 36-M.Silva | S | TRUE | 39 | 0 | 0% | 22 | 39% | 17 | 77% |
| 1 | DAL | 54-B.Carter | MLB | TRUE | 37 | 0 | 0% | 30 | 54% | 7 | 32% |
| 1 | DAL | 89-J.Phillips | TE | TRUE | 37 | 30 | 44% | 0 | 0% | 7 | 32% |
| 1 | DAL | 32-O.Scandrick | CB | TRUE | 34 | 0 | 0% | 27 | 48% | 7 | 32% |
| 1 | DAL | 85-K.Ogletree | WR | TRUE | 33 | 33 | 49% | 0 | 0% | 0 | 0% |
| 1 | DAL | 95-S.Lissemore | DT | TRUE | 32 | 0 | 0% | 27 | 48% | 5 | 23% |
| 1 | DAL | 92-J.Price-Brent | NT | TRUE | 28 | 0 | 0% | 23 | 41% | 5 | 23% |
| 1 | DAL | 99-K.Coleman | DT | TRUE | 24 | 0 | 0% | 24 | 43% | 0 | 0% |
| 1 | DAL | 52-D.Connor | LB | TRUE | 22 | 0 | 0% | 4 | 7% | 18 | 82% |
| 1 | DAL | 84-J.Hanna | TE | TRUE | 20 | 9 | 13% | 0 | 0% | 11 | 50% |
| 1 | DAL | 55-A.Albright | LB | TRUE | 18 | 0 | 0% | 0 | 0% | 18 | 82% |
| 1 | DAL | 96-M.Spears | DT | TRUE | 18 | 0 | 0% | 18 | 32% | 0 | 0% |
| 1 | DAL | 28-F.Jones | RB | TRUE | 16 | 12 | 18% | 0 | 0% | 4 | 18% |
| 1 | DAL | 57-V.Butler | LB | TRUE | 15 | 0 | 0% | 6 | 11% | 9 | 41% |
| 1 | DAL | 31-M.Butler | CB | TRUE | 14 | 0 | 0% | 7 | 12% | 7 | 32% |
| 1 | DAL | 34-P.Tanner | RB | TRUE | 14 | 1 | 1% | 0 | 0% | 13 | 59% |
| 1 | DAL | 70-T.Crawford | DT | TRUE | 13 | 0 | 0% | 3 | 5% | 10 | 45% |
| 1 | DAL | 15-A.Holmes | WR | TRUE | 12 | 0 | 0% | 0 | 0% | 12 | 55% |
| 1 | DAL | 17-D.Harris | WR | TRUE | 11 | 0 | 0% | 0 | 0% | 11 | 50% |
| 1 | DAL | 5-D.Bailey | K | TRUE | 9 | 0 | 0% | 0 | 0% | 9 | 41% |
| 1 | DAL | 6-C.Jones | P | TRUE | 6 | 0 | 0% | 0 | 0% | 6 | 27% |
| 1 | DAL | 78-J.Parnell | T | TRUE | 6 | 2 | 3% | 0 | 0% | 4 | 18% |
| 1 | DAL | 91-L.Ladouceur | LS | TRUE | 6 | 0 | 0% | 0 | 0% | 6 | 27% |
| 1 | DAL | 11-C.Beasley | WR | TRUE | 4 | 4 | 6% | 0 | 0% | 0 | 0% |
| 1 | DAL | 76-D.Dockery | G | TRUE | 4 | 0 | 0% | 0 | 0% | 4 | 18% |
| 1 | DAL | 67-P.Costa | C | TRUE | 3 | 3 | 4% | 0 | 0% | 0 | 0% |
| 1 | DAL | 18-K.Orton | QB | TRUE | 0 | 0 | 0% | 0 | 0% | 0 | 0% |
| 1 | DAL | 21-M.Jenkins | CB | FALSE | 0 | 0 | 0% | 0 | 0% | 0 | 0% |
| 1 | DAL | 37-M.Johnson | S | FALSE | 0 | 0 | 0% | 0 | 0% | 0 | 0% |
| 1 | DAL | 40-D.McCray | S | FALSE | 0 | 0 | 0% | 0 | 0% | 0 | 0% |
| 1 | DAL | 51-K.Wilber | LB | FALSE | 0 | 0 | 0% | 0 | 0% | 0 | 0% |
| 1 | DAL | 62-D.Arkin | G | FALSE | 0 | 0 | 0% | 0 | 0% | 0 | 0% |
| 1 | DAL | 87-C.Cochart | TE | FALSE | 0 | 0 | 0% | 0 | 0% | 0 | 0% |
| 1 | DAL | 90-J.Ratliff | NT | FALSE | 0 | 0 | 0% | 0 | 0% | 0 | 0% |
| WK | TEAM | PLAYER | POS | ACT |
TOT SNAP |
OFF SNAP |
OFF SNAP PCT |
DEF SNAP |
DEF SNAP PCT |
ST SNAP |
ST SNAP PCT |
| 1 | NYG | 23-C.Webster | LCB | TRUE | 70 | 0 | 0% | 68 | 100% | 2 | 9% |
| 1 | NYG | 21-K.Phillips | SS | TRUE | 68 | 0 | 0% | 68 | 100% | 0 | 0% |
| 1 | NYG | 26-A.Rolle | FS | TRUE | 68 | 0 | 0% | 68 | 100% | 0 | 0% |
| 1 | NYG | 85-M.Bennett | TE | TRUE | 62 | 54 | 96% | 0 | 0% | 8 | 36% |
| 1 | NYG | 90-J.Pierre-Paul | RE | TRUE | 62 | 0 | 0% | 59 | 87% | 3 | 14% |
| 1 | NYG | 75-S.Locklear | LT | TRUE | 59 | 56 | 100% | 0 | 0% | 3 | 14% |
| 1 | NYG | 77-K.Boothe | LG | TRUE | 59 | 56 | 100% | 0 | 0% | 3 | 14% |
| 1 | NYG | 64-D.Baas | C | TRUE | 59 | 56 | 100% | 0 | 0% | 3 | 14% |
| 1 | NYG | 76-C.Snee | RG | TRUE | 59 | 56 | 100% | 0 | 0% | 3 | 14% |
| 1 | NYG | 66-D.Diehl | RT | TRUE | 59 | 56 | 100% | 0 | 0% | 3 | 14% |
| 1 | NYG | 97-L.Joseph | LDT | TRUE | 59 | 0 | 0% | 55 | 81% | 4 | 18% |
| 1 | NYG | 93-C.Blackburn | MLB | TRUE | 59 | 0 | 0% | 51 | 75% | 8 | 36% |
| 1 | NYG | 10-E.Manning | QB | TRUE | 56 | 56 | 100% | 0 | 0% | 0 | 0% |
| 1 | NYG | 88-H.Nicks | WR | TRUE | 54 | 54 | 96% | 0 | 0% | 0 | 0% |
| 1 | NYG | 44-A.Bradshaw | RB | TRUE | 53 | 53 | 95% | 0 | 0% | 0 | 0% |
| 1 | NYG | 37-M.Coe | RCB | TRUE | 52 | 0 | 0% | 47 | 69% | 5 | 23% |
| 1 | NYG | 80-V.Cruz | WR | TRUE | 51 | 51 | 91% | 0 | 0% | 0 | 0% |
| 1 | NYG | 91-J.Tuck | LE | TRUE | 51 | 0 | 0% | 47 | 69% | 4 | 18% |
| 1 | NYG | 95-R.Bernard | RDT | TRUE | 50 | 0 | 0% | 50 | 74% | 0 | 0% |
| 1 | NYG | 57-J.Williams | LB | TRUE | 46 | 0 | 0% | 33 | 49% | 13 | 59% |
| 1 | NYG | 59-M.Boley | LB | TRUE | 43 | 0 | 0% | 38 | 56% | 5 | 23% |
| 1 | NYG | 30-J.Tryon | CB | TRUE | 41 | 0 | 0% | 22 | 32% | 19 | 86% |
| 1 | NYG | 72-O.Umenyiora | DE | TRUE | 41 | 0 | 0% | 41 | 60% | 0 | 0% |
| 1 | NYG | 94-M.Kiwanuka | SLB | TRUE | 39 | 0 | 0% | 34 | 50% | 5 | 23% |
| 1 | NYG | 28-J.Hosley | CB | TRUE | 34 | 0 | 0% | 28 | 41% | 6 | 27% |
| 1 | NYG | 87-D.Hixon | WR | TRUE | 29 | 27 | 48% | 0 | 0% | 2 | 9% |
| 1 | NYG | 55-K.Rivers | WLB | TRUE | 26 | 0 | 0% | 24 | 35% | 2 | 9% |
| 1 | NYG | 45-H.Hynoski | FB | TRUE | 21 | 16 | 29% | 0 | 0% | 5 | 23% |
| 1 | NYG | 78-M.Kuhn | DT | TRUE | 21 | 0 | 0% | 14 | 21% | 7 | 32% |
| 1 | NYG | 52-S.Paysinger | LB | TRUE | 19 | 0 | 0% | 0 | 0% | 19 | 86% |
| 1 | NYG | 27-S.Brown | S | TRUE | 18 | 0 | 0% | 0 | 0% | 18 | 82% |
| 1 | NYG | 58-M.Herzlich | LB | TRUE | 16 | 0 | 0% | 1 | 1% | 15 | 68% |
| 1 | NYG | 35-A.Brown | RB | TRUE | 15 | 0 | 0% | 0 | 0% | 15 | 68% |
| 1 | NYG | 13-R.Barden | WR | TRUE | 12 | 1 | 2% | 0 | 0% | 11 | 50% |
| 1 | NYG | 86-B.Pascoe | TE | TRUE | 12 | 12 | 21% | 0 | 0% | 0 | 0% |
| 1 | NYG | 31-W.Hill | S | TRUE | 10 | 0 | 0% | 0 | 0% | 10 | 45% |
| 1 | NYG | 22-D.Wilson | RB | TRUE | 8 | 3 | 5% | 0 | 0% | 5 | 23% |
| 1 | NYG | 63-J.Cordle | C | TRUE | 8 | 0 | 0% | 0 | 0% | 8 | 36% |
| 1 | NYG | 5-S.Weatherford | P | TRUE | 7 | 0 | 0% | 0 | 0% | 7 | 32% |
| 1 | NYG | 9-L.Tynes | K | TRUE | 7 | 0 | 0% | 0 | 0% | 7 | 32% |
| 1 | NYG | 51-Z.DeOssie | LS | TRUE | 7 | 0 | 0% | 0 | 0% | 7 | 32% |
| 1 | NYG | 98-A.Tracy | DE | TRUE | 7 | 0 | 0% | 0 | 0% | 7 | 32% |
| 1 | NYG | 65-W.Beatty | TE | TRUE | 5 | 5 | 9% | 0 | 0% | 0 | 0% |
| 1 | NYG | 81-A.Robinson | TE | TRUE | 2 | 2 | 4% | 0 | 0% | 0 | 0% |
| 1 | NYG | 82-R.Randle | WR | TRUE | 2 | 2 | 4% | 0 | 0% | 0 | 0% |
| 1 | NYG | 8-D.Carr | QB | TRUE | 0 | 0 | 0% | 0 | 0% | 0 | 0% |
| 1 | NYG | 12-J.Jernigan | WR | FALSE | 0 | 0 | 0% | 0 | 0% | 0 | 0% |
| 1 | NYG | 20-P.Amukamara | CB | FALSE | 0 | 0 | 0% | 0 | 0% | 0 | 0% |
| 1 | NYG | 33-D.Scott | RB | FALSE | 0 | 0 | 0% | 0 | 0% | 0 | 0% |
| 1 | NYG | 62-M.Petrus | G | FALSE | 0 | 0 | 0% | 0 | 0% | 0 | 0% |
| 1 | NYG | 71-A.Ojomo | DE | FALSE | 0 | 0 | 0% | 0 | 0% | 0 | 0% |
| 1 | NYG | 73-J.Brewer | T | FALSE | 0 | 0 | 0% | 0 | 0% | 0 | 0% |
| 1 | NYG | 96-M.Austin | DT | FALSE | 0 | 0 | 0% | 0 | 0% | 0 | 0% |
22 comments, Last at 08 Sep 2012, 7:42pm by Aaron Schatz
Lane Johnson and D.J. Fluker were selected high in the draft, but both have troubling flaws in pass protection according to Word of Muth.
Comments
Re: Look, Kids: Snap Data!
What is Mike Reiss going to do with all his time now?
Re: Look, Kids: Snap Data!
You stole my line! :)
Re: Look, Kids: Snap Data!
I'll put in my 2 cents: If someone played 100% of offensive or defensive snaps, put them in green, for ex. If they played in 80+ of snaps, put them in blue. If they played between 20-50%, in yellow; if less than 20%, in red (whatever color combo works easiest). That way we can identify top-notch players, starters, prominent subs (like WR3, CB3, TE2, etc), and niche/bench players.
I would also change the true/false for active/inactive to either T/F, or IMO, better to be Y/N or A/I. That column isn't very important to the table. Also, since it's a SNAP COUNT table, eliminate "SNAP" from every column. It just makes the table "bulkier."
Re: Look, Kids: Snap Data!
I'd rather see one color chosen, but adjust the shading based on the percentage. In grayscale, for example, a 100% player would have a black (#000000) background, a 0% player white (#ffffff), and a 50% player medium gray (#777777).
Joseph's color idea is OK if you're strictly bucketing (i.e. no shading), but could be difficult for those of us who are colorblind.
Re: Look, Kids: Snap Data!
Hey, Eddo, I'm colorblind to a certain extent too. I must be the opposite of you, because I have trouble with black vs. navy blue vs. dark gray. If I'm not paying close attention, I mix up spades & clubs at cards, too (but not diamonds & hearts). Anyway, as you discerned, my idea is just to make the numbers easier to sort visually.
I second the idea of another commenter to group them by position on offense and defense.
Another idea might be to have a table for everyone who takes an offensive snap, a defensive step, and a third for ST snaps. (Even though there might be the occasional defensive/ST snap for a Randy Moss type on a Hail Mary, or a NT getting a snap at FB on the goal line.) In this way, the table wouldn't be so wide.
Re: Look, Kids: Snap Data!
Huh, that's interesting. I have no trouble with shades (that is, I can tell black from dark gray, or navy blue from regular blue), but I have a lot of trouble discerning different colors themselves, unless they're more pure.
To elaborate: I can tell apple red from kelly green really well, but not a dark red from a dark green. I've asked co-workers to avoid using the standard red-green dichotomy on heat maps for this reason; I can pick out the extremes, but not the detail.
Re: Look, Kids: Snap Data!
I get you. When the eye doc asked my parents years ago if I had trouble with colors, I didn't get it--I mean, I never mixed up different colors. But I can't look at my sock drawer and tell if I picked up black or navy until I compare it to another pair. (That's why most of my dark socks have a stripe or other identifying characteristic :)) Same with dress slacks.
Re: Look, Kids: Snap Data!
I think position groupings would make sense on offense. All the O-Line together, QBs, WRs, RBs and TEs. Then sorted by # of snaps or maybe %age.
Re: Look, Kids: Snap Data!
I like this idea. Also the shaded colors for 100%, 75%+, etc.
Re: Look, Kids: Snap Data!
It could be me being thick but I haven't the foggiest why the chart has TRUE and FALSE in one column.
Re: Look, Kids: Snap Data!
True- active
False- inactice
Re: Look, Kids: Snap Data!
Yeah, it took me a minute to figure that one out too. It definitely draws the eye more than it probably should. In the case of anyone who played even a single snap, the TRUE is implied. It's really only relevant information for players that got 0 snaps, and in this particular case, for both teams, the only active player to get 0 snaps was the backup QB.
Re: Look, Kids: Snap Data!
I think this data could go a long way toward telling us which WRs, TEs, and RBs are good at blocking (or being decoys I guess). In the past we only had target data but arguably if WR A has more targets but WR B has more snaps, WR B is more valuable to his team.
Re: Look, Kids: Snap Data!
Arguably, perhaps, if injury is not the cause of the target/snap disparity.
Just for discussion purposes, I'll throw this out there -- if WR A gets more targets than WR B, but WR B is getting more snaps, perhaps this indicates that something is off in terms how these players are being utilized. (Again, taking injury out of the equation.) Obviously, having never seen this level of detail in the data before, it's hard to know if this situation even comes up. But it would seem to me that either WR A is better at getting open and should be playing more than WR B, or the QB locks in on WR A and forces passes to him (perhaps in an attempt to satisfy the Randy Ratio).
Re: Look, Kids: Snap Data!
Perhaps yards after catch by other receivers when given players are on/off the field. Is Player A more likely to have a lot of yards after catch with Player B on the field or Player C on the field? Perhaps the same could be said about certain types of running players as well. There would be a lot of noise in the date, and receivers who demand double coverage all the time may skew the numbers, but it may be worth investigating.
Re: Look, Kids: Snap Data!
We don't have who's participating on individual plays yet, so we can't measure those interreactions. Having this snap data is better than not having it, but it's a long way from being seriously useful.
Re: Look, Kids: Snap Data!
Why is the backup QB for each team showing as "True" with 0 credited snaps?
Re: Look, Kids: Snap Data!
On the active roster, but did not play.
Re: Look, Kids: Snap Data!
True means they were on the 46 person active roster, even if they didn't play any snaps.
Re: Look, Kids: Snap Data!
Question: the Cowboys ran 57 offensive plays, but the table lists 68 offensive snaps. Does it include all the pre-snap penalties as actual snaps?
Re: Look, Kids: Snap Data!
Most presnap penalties are counted. Illegal Substitution and some Delay of Game penalties where neither team lines up (usually punt plays) will not be listed.
Re: Look, Kids: Snap Data!
And he knows, because that's Chris Hoeltge, the man at the NFL office responsible for distributing this data to the media!
Post new comment