This dataset contains historical NFL game data from the 1966 through 2021 seasons. It includes 13,290 games and contains information such as home and away teams, final scores, playoff status, stadiums, betting spreads, over/under lines, and weather conditions.
For this project, I created five main data visualizations to analyze different trends in NFL scoring and team performance. I included a multiple-line graph showing the average points scored per game by the Bills, Jets, Patriots, and Giants from the 2014 through 2020 seasons. I also created a multiple-bar graph comparing the average points scored in home playoff games by AFC East and AFC North teams. Another bar graph examines the number of home playoff games played by AFC East teams. Finally, I created heat maps to identify which weeks of the NFL season had higher average scoring between 2014 and 2020. These visualizations help show differences in scoring, playoff performance, and team performance over time. I chose to focus more closely on teams from the Northeast, particularly the AFC East, because I am a New York Jets fan and was interested in comparing their performance with other teams in the region.
I had a lot of fun with the project, since my education in information systems & data analytics I think this is project I think I can take with into my professinal experiecience
I had a lot of fun working on this project because it allowed me to apply skills that I have learned through my education in Information Systems and Data Analytics. I enjoyed working with the data, creating visualizations, and identifying different trends throughout the NFL dataset. I think this is a project that I can carry with me into my professional experience because it helped me strengthen my ability to analyze data and communicate findings through visualizations.
This dataset contained many promblems within the dataset:
When running the head function you can already notice a promblem within the dataset.
## schedule_date schedule_season schedule_week schedule_playoff
## Length :13290 Min. :1966 Length :13290 Mode :logical
## N.unique : 2466 1st Qu.:1982 N.unique : 24 FALSE:12669
## N.blank : 0 Median :1997 N.blank : 0 TRUE :534
## Min.nchar: 8 Mean :1995 Min.nchar: 1 NAs :87
## Max.nchar: 10 3rd Qu.:2009 Max.nchar: 10
## NAs : 87 Max. :2021 NAs : 87
## NAs :87
## team_home score_home score_away team_away
## Length :13290 Min. : 0.00 Min. : 0.00 Length :13290
## N.unique : 43 1st Qu.:14.00 1st Qu.:13.00 N.unique : 43
## N.blank : 0 Median :22.00 Median :20.00 N.blank : 0
## Min.nchar: 13 Mean :22.44 Mean :19.75 Min.nchar: 13
## Max.nchar: 24 3rd Qu.:29.00 3rd Qu.:27.00 Max.nchar: 24
## NAs : 87 Max. :72.00 Max. :62.00 NAs : 87
## NAs :87 NAs :87
## team_favorite_id spread_favorite over_under_line stadium
## Length :13290 Min. :-26.500 Min. :28.0 Length :13290
## N.unique : 33 1st Qu.: -7.000 1st Qu.:38.5 N.unique : 113
## N.blank : 0 Median : -4.500 Median :42.0 N.blank : 0
## Min.nchar: 2 Mean : -5.393 Mean :42.2 Min.nchar: 8
## Max.nchar: 4 3rd Qu.: -3.000 3rd Qu.:45.0 Max.nchar: 35
## NAs : 2566 Max. : 0.000 Max. :63.5 NAs : 87
## NAs :2566 NAs :2638
## stadium_neutral weather_temperature weather_wind_mph weather_humidity
## Mode :logical Min. :-6.00 Min. : 0.000 Min. : 4.00
## FALSE:13101 1st Qu.:48.00 1st Qu.: 3.000 1st Qu.: 57.00
## TRUE :102 Median :61.00 Median : 8.000 Median : 69.00
## NAs :87 Mean :58.78 Mean : 7.751 Mean : 67.22
## 3rd Qu.:72.00 3rd Qu.:12.000 3rd Qu.: 79.00
## Max. :97.00 Max. :40.000 Max. :100.00
## NAs :1130 NAs :1147 NAs :4867
## weather_detail
## Length :13290
## N.unique : 8
## N.blank : 0
## Min.nchar: 3
## Max.nchar: 20
## NAs :10479
##
## [1] "Miami Dolphins" "Houston Oilers"
## [3] "San Diego Chargers" "Green Bay Packers"
## [5] "Atlanta Falcons" "Buffalo Bills"
## [7] "Detroit Lions" "Pittsburgh Steelers"
## [9] "San Francisco 49ers" "St. Louis Cardinals"
## [11] "Washington Redskins" "Los Angeles Rams"
## [13] "Cleveland Browns" "Dallas Cowboys"
## [15] "Denver Broncos" "Minnesota Vikings"
## [17] "New York Jets" "Oakland Raiders"
## [19] "Philadelphia Eagles" "Baltimore Colts"
## [21] "Boston Patriots" "Kansas City Chiefs"
## [23] "New York Giants" "Chicago Bears"
## [25] "New Orleans Saints" "Cincinnati Bengals"
## [27] "New England Patriots" "Seattle Seahawks"
## [29] "Tampa Bay Buccaneers" "Los Angeles Raiders"
## [31] "Indianapolis Colts" "Phoenix Cardinals"
## [33] "Arizona Cardinals" "Jacksonville Jaguars"
## [35] "St. Louis Rams" "Carolina Panthers"
## [37] "Baltimore Ravens" "Tennessee Oilers"
## [39] "Tennessee Titans" "Houston Texans"
## [41] "Los Angeles Chargers" "Washington Football Team"
## [43] "Las Vegas Raiders" NA
## [1] "schedule_date" "schedule_season" "schedule_week"
## [4] "schedule_playoff" "team_home" "score_home"
## [7] "score_away" "team_away" "team_favorite_id"
## [10] "spread_favorite" "over_under_line" "stadium"
## [13] "stadium_neutral" "weather_temperature" "weather_wind_mph"
## [16] "weather_humidity" "weather_detail"
## schedule_date schedule_season schedule_week schedule_playoff
## 87 87 87 87
## team_home score_home score_away team_away
## 87 87 87 87
## team_favorite_id spread_favorite over_under_line stadium
## 2566 2566 2638 87
## stadium_neutral weather_temperature weather_wind_mph weather_humidity
## 87 1130 1147 4867
## weather_detail
## 10479
One of the first things I noticed in the dataset was that historical team names were used. For example, the dataset includes both the Baltimore Colts and the Indianapolis Colts, even though they are the same franchise. This was one of the first issues I needed to address so I could accurately compare teams across different seasons and analyze their historical performance.
Also, there was a significant amount of missing data within the dataset. I had to remove the blank and missing values so they would not interfere with the numerical analysis or visualizations. I noticed that the 87 missing values in the score_away variable occurred in the same rows as many of the other missing values in the dataset. Because these rows were incomplete across multiple variables, removing them helped create a cleaner dataset and made the results and visualizations more accurate and easier to interpret.
Lastly, the weather deatail variable contained more than 80% missing values. Since such a large portion of the data was unavailable, I decided to remove this variable from the dataset. Keeping them would not have added much value to the analysis and could have made the results less reliable.
# Findings 1
The main purpose of this graph was to determine which teams scored the most points in their home playoff games. I also wanted to look historically at whether certain teams appeared to rely more on offensive production or a defensive style of play. The main finding is that the Buffalo Bills had the highest average points scored in home playoff games at 28.0 points, followed closely by the New England Patriots at 27.1 points and the New York Jets at 26.3 points. Overall, AFC East teams appeared near the top of the rankings, while the Baltimore Ravens had the lowest average at 18.9 points among the teams analyzed. This result is interesting because the Ravens have historically been known for strong defensive teams. For example, during their 2000 season, their offense averaged around 21 points per game, showing how a team can still be successful without being one of the highest-scoring offenses.
Plot was created to figuured out of the AFC East team which teams
perform the best standard to get a home playoff game.
The main finding from this graph is that the New England Patriots had by far the most AFC East home playoff games, with about 34 games, followed by the Miami Dolphins with about 25, the Buffalo Bills with about 14, and the New York Jets with only about 7. The graph also shows that the Patriots’ home playoff appearances were spread across many seasons, especially during the 2000s and 2010s. Much of this success can be connected to the Tom Brady era, when the Patriots consistently dominated the AFC East and regularly earned home-field advantage in the playoffs.
In comparison, the Jets had the fewest home playoff games among the four teams. Their lower number of playoff appearances helps explain why they have had fewer opportunities to host postseason games. Some of the Jets’ earlier playoff success occurred during the Joe Namath era in the late 1960s and early 1970s. Overall, the graph shows the major difference in long-term playoff success between New England and the other AFC East teams.
Plot was created to compared offensive points score in 2014 to 2020
seasons by the Patriots,Jets,Giants,Bills
The graph compares the total home points scored by the Buffalo Bills,
New England Patriots, New York Giants, and New York Jets from the 2014
through 2020 seasons. The main finding is that the New England Patriots
scored the most home points in most seasons, especially from 2014
through 2018. Their highest total came in 2014 at about 370 points, and
they remained well above the other teams for several years before
dropping sharply in 2019 and 2020.
The Buffalo Bills showed the biggest increase by 2020, jumping to about 300 home points and finishing with the highest total that season. The Jets and Giants were generally lower and more inconsistent throughout the period. Overall, the graph shows the Patriots’ offensive dominance during most of the timeframe, while the Bills improved significantly toward the end of the period.
This plot was created to show from seasons 2014 to 2021 you find to
what days from Sunday, Monday, or Thursday have the highest scoring
games
The graph shows the average total points scored in NFL games played on
Sunday, Monday, and Thursday from the 2014 through 2021 seasons.
Overall, the average scoring stayed fairly consistent across the three
days, usually ranging from the low 40s to around 50 points per game.
Monday games had the highest average in 2014, while Thursday games were
among the highest-scoring in 2018, 2020, and 2021. Sunday games were
generally consistent from year to year and did not show as much
variation as the other days. The main takeaway is that there was no
single day of the week that consistently produced the highest-scoring
games, although Thursday and Monday games had several seasons with
slightly higher averages.
This plot was show to find what season weeks from 2014 to 2021 had
highest average scoring games.
The heat map shows the average total points scored in NFL games for each
regular-season week from 2014 through 2020. Overall, scoring varied
quite a bit from week to week and from season to season, but there was
no single week that consistently produced the highest average score
every year. Some of the highest-scoring weeks shown were Week 2 of 2020
at 53.3 points, Week 4 of 2018 at 53.4 points, and Week 4 of 2014 at
52.1 points. In contrast, some weeks had much lower averages, such as
Week 15 of 2014 at 36.4 points and Week 16 of 2017 at 37.8 points. The
2020 season stands out because several weeks had averages above 50
points, suggesting that it was one of the higher-scoring seasons in this
period. Overall, the heat map makes it easier to identify when scoring
increased or decreased throughout different NFL seasons.
Overall, this project allowed me to explore historical NFL data while taking a deeper look at my favorite team, the New York Jets. I analyzed areas such as home playoff appearances, average points scored in home playoff games by AFC East and AFC North teams, and total home points scored across different seasons. Through the data and visualizations, it became clear that the New England Patriots dominated many of these categories, especially during the modern NFL era. They had the most home playoff appearances and consistently scored more total points at home than many of the other teams analyzed.
In comparison, the Jets struggled in several areas of the analysis. They had fewer home playoff appearances and generally scored fewer total home points across the seasons analyzed. This helped show the large difference in performance between the Jets and Patriots over time. The weekday and heat map visualizations also showed that scoring can vary depending on the season, week, and day of the game. However, there was not one specific day or week that consistently produced the highest scoring. This project also showed me the importance of cleaning data before creating visualizations, especially when dealing with missing values and historical team name changes.
Overall, I enjoyed working with this dataset because it allowed me to combine my interest in football with the data analysis and visualization skills I have learned through Information Systems and Data Analytics. This project strengthened my ability to clean data, identify trends, create effective visualizations, and communicate findings in a way that can be useful in future academic and professional projects.