Scatterbrained: Week 5 Tips & Trends

Scatterbrained: Week 5 Tips & Trends

What’s On My Mind This Week

Celebrating Breakthroughs

Throughout the birth and infant development of my homebrew NFL play-by-play database, I’ve been fortunate enough to stumble on a few epiphanies. … And concepts that should provide a real edge when assessing what to do with lineups every week and beyond.

Last night, I broke through a wall I’ve attempted to scale for a few weeks. I was so giddy that I tweeted this around midnight:

[table “Scatter_Blank” not found /]

Did I feel like a Redneck Super Saiyan? Somewhat.

I’ve been struggling with a problem since early September, and it’s likely a problem most in the fantasy industry encounter – manual data manipulation. Excel is a fantastic tool, but oftentimes we have to repetitively cut/paste/hack data from the web into a spreadsheet1, then deal with formatting/naming inconsistencies, and finally try to wrangle something useful from it. This is the primary reason I relocated to R2 last year.

A hallmark of the ADHD personality is an utter distaste (and outright avoidance, typically) of the mundane, and let me tell you… nothing in the world is more mundane than moving data around in Excel over and over and over and over and over again. The alpha version of DAAM (Defensive Adjusted Aggregate Metric) required more data movement than it should, and it led to me not updating it quickly enough for action each week.

So what happened last night was nothing short of magic… in my microcosm at least. During an invigorating beer and short walk, inspiration struck. A clear path to fully automating DAAM ripped through my head like a nugget of magnesium zipping around a Petri dish of water. The roadmap was clear. Four hours later, around the time I posted the tweet above, I had a thriving beta version of DAAM nicely scripted in R. I was exhausted, yet stoked.

Mapping Out the Next Summit(s)

Oftentimes, however, scaling one mountaintop leads to the recognition of many others ahead. I relish the challenge. I’m not sure which direction I will go yet, but when I do I will happily detail the process here. Knowing where you want to go is the clearest way to create a map to get there. I’ll discuss some of my ideas below.

Scattered Thinking About Week 5

At-A-Glance Passing Game Breakdowns

Thanks to a late-week discussion with Sal Stefanile (@2QBFFB) regarding how we (as an industry) can leverage Air Yard information for the common good, inspiration struck again. Like many, I’m a visual person. I can read deep-dive stat factoids on Twitter all day, but none of them stick with me as well as a big-picture visual of what those statistics are attempting to convey. So, when Sal posed a random question regarding Air Yards in our Slack channel, I suffered another “magnesium nugget” moment that led to the creation of this:

[table “Scatter_Blank” not found /]

What you see is a new visualization called a Passing Game Breakdown (PGB). It will also sometimes be called a QB Breakdown (QBB) when we breakdown specific QBs, like Ryan Tannehill above.

Passing Attempts are broken down at the play level by pass direction (Left, Middle, Right) and Air Yards. Blue dots are completed passes, gold dots – incompleted passes, green dots – TDs, and red dots – INTs. The darker the dot, the more occurrences of a play to that particular Air Yardage point. You’ll also notice multipliers in some instances next to TDs and INTs that indicate how many occurred at that Air Yardage point.


[table “Scatter_Blank” not found /]

At the bottom of the plots, you’ll see numbers. These are the pass attempts broken down by direction.


[table “Scatter_Blank” not found /]

I love this representation of the passing game (or slice of it) because it provides incredibly clear, actionable information in a compact area. Quickly, you can see where passes are distributed, where wins/losses occur, where offenses prefer to attack, where defenses may be vulnerable, and so on. I’ll be using these going forward in Scatterbrained to highlight some of the other information I’m gathering, and possibly to confirm or deny some of the narrative floating around in media.

Now, don’t get me wrong, “All 22” visualizations of the passing game have been around for ages. I’m not doing anything new, nor do I claim that. What I feel differentiates the PGB from what I’ve seen historically is the ability to rapidly screen the data for different situations. You’ll see how that works later in the article!

[table “Scatter_Blank” not found /]

Fortifying a DAAM

As I mentioned in the open, I had a massive breakthrough with DAAM last night, and now feel it’s an incredibly robust tool for offensive and defensive measurement and projection. It still has room to grow, too, which invigorates me to accelerate its development.

What you see below is an eight-week sample of DAAM 2.0 for the Arizona Cardinals, specifically PPR scoring for QBs. Also, below are definitions of the key variables.


hmA binary representation of home and away. Home games are 1, away games are 0.
QBQB Fantasy Points for that week. In this version, PPR points are shown.
def.dQBDefensive QB differential. This is the DAAM for the opponent faced that week. Negative values represent stronger defenses, and vice versa.
aQBAdjusted QB Fantasy Points for that week. Simply, this is a normalization of QB scoring for the given opponent - grading on a curve. In this version, PPR points are shown.

[table “Scatter_Blank” not found /]

What I’m attempting to show here is the relative strength of schedule ARI QBs have faced in the first five weeks. It turns out to be a bit tougher than league average (0.00 FPs Per Defense Faced) at -1.33 FPPDF below average. This is definitely buoyed by Buffalo, otherwise they’d be practically league average at -0.23 FPPDF.

You’ll also see a look-ahead of three weeks, with a projected get-right home game against the J-E-T-S JETS JETS JETS this week, where they are currently favored by 7.5. Beyond that, ARI has a home date with the Seahawks, who are currently #1 in def.dQB (-7.20 FPs Per QB Faced) on the season.

I expect Mike Floyd or John Brown to torch New York deep, and I’ll show why shortly.

[table “Scatter_Blank” not found /]

Leverage Going Into Week 6

Atlanta Falcons (Offense & Defense)

If you follow me on Twitter (@FantasyADHD) you’ll see that I’ve posted quite a few Game Script Splits (GSS) over the last few days as I’ve added Week 5 data into the mix. I see some interesting trends developing.

For starters, Atlanta being at the top of the league in offensive output is a bit of a surprise. We’ve always felt the personnel was in place for them to really put it to defenses, but we thought it would be a volume-heavy approach to Julio Jones as the impetus. We also felt (except for @LakeTwoQBs) that Matt Ryan shackled this offense to mediocrity. Clearly the additions on the offensive line and the re-imagining of the offense under Kyle Shanahan are paying dividends to this point and ATL are happy to play very run-heavy with the leads they’ve enjoyed this season.

[table “Scatter_Blank” not found /]

Likewise, you’ll see that their opponents are incredibly pass-heavy, even early on in games. This might be somewhat skewed by a boat race at CAR and a regular old game vs NO, but it’s worth noting that even in the first half, teams are throwing early and often against Dan Quinn’s defense.

[table “Scatter_Blank” not found /]

New York Jets

The Jets are getting trashed on the scoreboard. It turns out their pass defense is pretty atrocious. NYJ currently rank 29th in def.dQB at 5.49 FPPDF, meaning they are yielding 32.6% more fantasy points to QBs than league average (16.817 adj. FP) through five weeks. Target them relentlessly.3

[table “Scatter_Blank” not found /]

But which positions are best? Outside of QB, I think pass-receiving RB and deep-threat WR are the best opportunities for TDs, and here’s why:

[table “Scatter_Blank” not found /]

If you’re keeping score at home, that’s a 6.9% Touchdown Rate (TDR) overall. WRs are outputting 7.9% TDR, and RBs 8.3% TDR. I do not have those numbers weighted against league averages (yet), but they appear pretty appealing considering the visuals themselves.

[table “Scatter_Blank” not found /]

DAAM for Week 6

I’ve generated DAAM for each position, and you can find it here below. This might help you choose between matchups, but keep in mind that this is position-wide, so what we don’t capture here (yet) is whether the WR1 or WR2 eats against said defense, and the same for RBs. As always, apply with a critical eye.

Asides & Errata

Thanks for spending your time on me this week. Hopefully the visualizations and ideas above provide some insight this week as you make selections.

If you have questions about what I presented, or want to discuss in more detail, please find me on Twitter @FantasyADHD.

If you want to quickly lift tables from websites for a formatting-free, raw paste into Excel, I highly recommend Chrome extensions Table Capture or Copytables.

R is a statistical programming language that is incredibly flexible. Think of it as a command-line version of Excel. If you’d like to read up more, I suggest visiting FantasyFootballAnalytics, and the helpful Rotoviz bulletin board.

Pun completely and unapologetically intended.

Josh Hornsby

Josh Hornsby leads engineering teams in the oil & gas industry. His background in new product development, combined with nearly 20 years of data-driven fantasy experience, compels him to think outside the box and wreck the echo chamber of current fantasy analysis. Josh loves to challenge popular thinking and typically does so with numbers in hand. You can find him on Twitter @FantasyADHD

Latest posts by Josh Hornsby (see all)

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.