Category Archives: Uncategorized

NFL Predictions – Week 1


Week 1: W/L 9-7, Spread 11-5, O/U 8-8

Week 1 Picks

Dallas at Tampa Bay

Outcome: Buccaneers 32-17

Spread: Buccaneers -9

Total: Under 52

Philadelphia at Atlanta

Outcome: Falcons 25-22

Spread: Eagles +3.5

Total: Under 48.5

Pittsburgh at Buffalo

Outcome: Bills 25-21

Spread: Steelers +6.5

Total: Under 48.5

NY Jets at Carolina

Outcome: Panthers 28-19

Spread: Panthers -4

Total: Over 44

Minnesota at Cincinnati

Outcome: Vikings 28-18

Spread: Viking -3

Total: Under 47.5

Seattle at Indianapolis

Outcome: Seahawks 25-24

Spread: Colts +3

Total: Over 49

San Francisco at Detroit

Outcome: 49ers 26-23

Spread: Lions +8.5

Total: Over 45

Jacksonville at Houston

Outcome: Texans 31-22

Spread: Texans +3

Total: Over 45

Arizona at Tennessee

Outcome: Titans 27-25

Spread: Cardinals +3

Total: Over 52

LA Chargers at Washington Football team

Outcome: Football Team 21-20

Spread: Chargers +1

Total: Under 44.5

Cleveland at Kansas City

Outcome: Chiefs 32-23

Spread: Chiefs -5.5

Total: Over 54.5

Green Bay at New Orleans

Outcome: Saints 26-25

Spread: Saints +3.5

Total: Over 50

Miami at New England

Outcome: Patriots 22-17

Spread: Patriots -3

Total: Under 43.5

Denver at NY Giants

Outcome: Broncos 23-20

Spread: Broncos -3

Total: Over 42

Chicago at LA Rams

Outcome: Rams 27-16

Spread: Rams -7.5

Total: Under 46.5

Baltimore at Las Vegas

Outcome: Raiders 27-25

Spread: Raiders +4

Total: Over 50.5

Average color of earth

This is awesome:

Average colors of the world


Regression on Angular Data

So, I’ve been working on missing data in statistical shape analysis for the last several years and one question that has popped up out of this is how would we deal with missing data for angular data (this question is related to how to deal with missing data in shapes, i swear).  So, as part of this I’ve been reading about regression models for angular data and angular data in general.

Here are some links to papers on the topic:

I graduated with a Ph.D. in statistics ten years ago, and I start studying statistics almost 20 years ago, and I’ve never ever thought about angular data analysis until now.  I’m just constantly amazing by how little I know.  There is just too much stuff.




I saw on Flowing Data this Snowflake Generator.  It’s way cooler than my snowflake generator.



Euro 2020: Some thoughts.

Here is a plot I made showing which seeds advanced to the round of eight (green), eliminated in round of 16 (blue), or eliminated in the group stage (black).

Some thoughts:

  • The only group that didn’t advance anyone to the final 8 was the “group of death”, group F.  France, Germany, and Portugal all lost their games in the Round of 16.  That’s the last two World Cup Champions and the last Euro Champion all eliminated.
  • Of the 8 teams to advance, three of them finished third in their group.
  • One 3 of the 6 group winners advanced to the Quarterfinals (England, Italy, Belgium).
  • Groups A, B, and D each had two teams advance.
  • Belgium and Italy who play each other in the Quarterfinals combined for 6 wins, 0 losses, 0 ties, and 18 points in group play.  The other 6 teams earned 26 points TOTAL from 7 wins, 7 losses, and 4 ties.
  • Two teams in the final 8 had two losses in the group stage (Denmark and Ukraine).
  • There were 7 teams that had 0 losses in the group stage.  Only 3 advanced to the Quarterfinals (Spain, Belgium, Italy).  And all three of these teams are on the same side of the bracket.
  • If you are wondering how the matchups in the knockout stage were decided, check out this wikipedia page. Cheers.   And go Denmark, Switzerland, and Czech Republic!


Computers generating puns!

Click to access 1910.10950.pdf

Euro 2020: Just some random thoughts.

Below are Luke Benz’s Euro Cup 2021 predictions from June 10.  You should all be following Luke.

Some thoughts on June 28:

  • The Czech Republic only had a 15% chance of reaching the quarterfinals!  And the Netherlands had the second highest probability of making the quarterfinals.
  • Belgium will play Italy in the quarterfinals.  That could have been a final.  Meanwhile, as Luke pointed out to me, either Denmark or Czech Republic will end up in the semi-finals.
  • England will not win this tournament.
  • Totally unrelated to this, it’s always weird when I remember that GREECE won Euro 2004.  GREECE!

A Bayesian marked spatial point processes model for basketball shot chart

This paper from the December 2020 issue of JQAS is wonderful: A Bayesian marked spatial point processes model for basketball shot chart.

Simply put, the build a model looking at where players are taking shots and then given a location, how often are they making shots from those locations.

I’m particularly interested in this point from the paper:

The preferred models for all four players, which are intensity independent model for Curry and intensity dependent model for other three players, can reduce the MSE by 2.7, 1.3, 2.0, and 7.0%.

I think the correct way to interpret this is that three of the players analyzed have different chances of making a shot based on where they shot is taken.  But for Curry, the probability he makes a shot is INDEPENDENT of where he is taking a shot.  Basically he’s just good everywhere.  (If this is NOT the correct interpretation, let me know!)

I’d love to see the analysis expanded to all players in the league and see who else would end up with an intensity independent model.




Data art!

Tapestry for reflective data visualization


I made a useful shiny app (and you can too!)

I made a shiny app for organizing openmics in Chicago.  (Yes, I’ve started doing stand up.  No, I’m not good……yet.)

The code for making this app can be found on my github.

And the wonderful Shiny cheatsheet can be found here.

The real key for me to get this to work was the addition of the global.R file.  I didn’t realize you could add this along with the ui.R and server.R files.  I HIGHLY recommend the global.R file in your shiny apps.  I’m going to use this as an example of a shiny app in my Data Science 101 course that I am developing and will teach for the first time Spring 2022.