Data Exploration on Airline Flight Delays with Shiny
The skills the author demoed here can be learned through taking Data Science with Machine Learning bootcamp with NYC Data Science Academy.
Introduction
The Delayed Flight Experience:
Picture this scenario from our data base: You spend an hour making your way to the airport on the outskirts of town. You arrive there an hour or two early to make sure you make your flight. Now you have to get through security dealing with long lines, body scanners, random searches, and putting your laptop in a separate bin. Finally you make it to your gate, to find out that your flight is delayed for any number of reasons (usually they don't tell you). Now you're stuck waiting at the gate indefinitely until you can get on your flight.
Flight Delay Shiny app:
For the given scenario above, this app was intended to allow the average flight consumer to make better informed decisions about which flights to take. This app was made to visualize the flight delays in the U.S. in 2008 to have a better sense of how likely and how often a delay occurred based on a given airport, route, or airline.
In the Map tab, the user can choose the airport and time frame to see the routes on the U.S. map of the top 10 routes (or maximum available) originating from the chosen airport. Furthermore, these flights can be sorted by either the total delays or the percentage of delays. In the stats tab, the user can specify the route and/or airline to see the delay trends by day of the week, and month. Lastly, the delay causes app will display the break down of the causes and the time information associated with each one.
Data Set:
The data set used for this web application and analysis was from Stat Computing Data Expo 2009. The data was compiled from data originating from the U.S. Bureau of Transportation. The data can be found here: http://stat-computing.org/dataexpo/2009/the-data.html . In addition, another data set that contains the airport IATA codes and their corresponding latitude/longitude coordinates were from here: http://datasets.flowingdata.com/tuts/maparcs/airports.csv .
Shiny Web Data Application
The link to the shiny web application can be found here.
First Tab
The first tab in the app contains the map of the U.S. Once the user inputs the origin airport, method of sorting, and the time frame of interest, the map will be populated with arcs that display the top ten most delayed routes sorted by either the total delays or percentage of delays. The user can also click on the lines themselves for a popup that contains more specific information about that route. Below the map is the data table of all the routes originating from the given airport and their delay information.
Second Tab
The second tab is a graphical statistics tab for the user to learn about the time trends of a specific route and/or airline. It is also possible to choose to display information of "All" in any of the fields. The first bar chart shows the aggregated percentage of flights that were delayed on all the weekdays.
In this chart, 1 corresponds to Monday and the rest follows like-wise. Specifically for the case shown in the image, Friday (day 5) seems to have the most delays, followed by Sunday. The second line graph shows the monthly trend of delays. Again in the case show in the image, it seems that the peak of delays was during June and the low point was in November.
Third Tab
The third tab here displays information regarding the reason for delays. The five types of delays included here are:
- Weather: extreme or hazardous weather conditions that are forecasted or manifest themselves on point of departure, enroute, or on point of arrival.
- Security: evacuation of a terminal or concourse, re-boarding of aircraft because of security breach, inoperative screening equipment and/or long lines in excess of 29 minutes at screening areas.
- NAS: Delay that is within the control of the National Airspace System (NAS) that may include non-extreme weather conditions, airport operations, heavy traffic volume, air traffic control, etc.
- Late Aircraft: late arrival of the same aircraft at a previous airport.
- Carrier: within the control of the air carrier. Examples of occurrences that may determine carrier delay are: aircraft cleaning, aircraft damage, awaiting the arrival of connecting passengers or crew, etc.
The upper left bar chart shows the median minutes of delay by cause. In this specific case, security had the highest median delay at about 80 minutes. The upper right graph shows the total delays for each reason. In the example shown, NAS had the highest number of delays, exceeding 1500 flights. The bottom violin graphs show the distribution of each cause. In the example, one can see that four of the five causes have their highest modes near zero, and a lot of outliers far away from zero. This also suggests that most delays may be short.
Future Steps
- Include more flight data, especially more recent flights to get the best accurate description of delays.
- More visualization tools to dig deeper into the delay causes and how they might help inform the users how to avoid or expect these delays.
- Include flight prices to associate delays and their prices (i.e maybe lower prices have higher probabilities of being delayed)
- Include delay threshold for users to indicate what level of delay they are willing to wait. This would also filter out minor delays and only include major incidences.