Power BI | Unpünktliche Flüge

Hallo zusammen!In diesem Video präsentiere ich die Ergebnisse einer Analyse zur Flugpünktlichkeit am Los Angeles International Airport. Wir betrachten Statistiken zu Flügen, die am LAX Flughafen starten oder landen, und untersuchen die Pünktlichkeitsraten verschiedener Fluggesellschaften. Wir analysieren die Daten aus den Jahren 2005 bis 2007. Am Ende betrachten wir die Muster der Unpünktlichkeit und geben einen Überblick über die Ergebnisse. Schaut euch die Visualisierungen an, um die Daten besser zu verstehen!

Schritte zur Erstellung des Berichts:

1- Daten sammeln:

Verbinde dich mit den Datenquellen und lade die benötigten Daten für deine AnalysenDie Daten wurden in einer Datenbank und einer CSV-Datei zur Verfügung gestellt. Das folgende Datenwörterbuch erklärt die Bedeutung der DatenDatenbank Flight_Data, Tabelle flightsDer Großteil der Daten liegt in einer Datenbank.Datenbanksystem:
    •  PostgreSQL
Da der Datensatz sehr groß ist habe ich die mit eine präzise  SQL query abfrage geschränkt:

According to the following criteria.:- nur Flüge von oder nach "lax" werden in der Analyse berücksichtigt.- als Information Grundlage dienen die flugdaten der jahre 2015 bis 2017.- gestrichene oder umgeleitete flüge wurden in der analyse nicht berücksichtigt.- als unpünktlich gilt ein flug, wenn er mindestens 5 minuten von der geplanten zeit abweicht
SELECT *FROM flightsWHERE origin = 'LAX'AND fl_date BETWEEN '2015-01-01' AND '2017-12-31'AND cancelled = FALSEAND diverted = FALSEUNIONSELECT *FROM flightsWHERE dest = 'LAX'AND fl_date BETWEEN '2015-01-01' AND '2017-12-31'AND cancelled = FALSEAND diverted = FALSE
Creating the relationship between tables
SpaltennameBeschreibung
flight_idID des Eintrags, Primärschlüssel in der Datenbank
fl_dateFlugdatum
op_carrierKennung der Fluglinie
op_carrier_fl_numFlugnummer
originKennung des Startflughafens
destKennung des Zielflughafens
crs_dep_timeGeplante Abflugzeit
dep_timeTatsächliche Abflugzeit
dep_delayAbflugverzögerung in Minuten
taxi_outMinuten zw. Abfahrt vom Gate und Abheben
wheels_offZeitpunkt des Abhebens
wheels_onZeitpunkt der Landung
taxi_inMinuten zw. Landung und Ankunft am Gate
crs_arr_timeGeplante Ankunftszeit
arr_timeTatsächliche Ankunftszeit
arr_delayAnkunftsverzögerung in Minuten
cancelledFlug gestrichen (TRUE = ja, FALSE = nein)
cancellation_codeGrund für Flugstreichung: A – Fluglinie, B – Wetter, C – Flugaufsicht, D – Sicherheit
divertedFlug umgeleitet (TRUE = ja, FALSE = nein)
crs_elapsed_timeGeplante Flugzeit in Minuten
actual_elapsed_timeTatsächliche Flugzeit in Minuten
air_timeZeit zw. wheels off und wheels on in Minuten
distanceDistanz zw. Flughäfen in Meilen
carrier_delayMinuten Verzögerung in Verantwortung der Fluglinie
weather_delayMinuten Verzögerung aufgrund von Wetter
nas_delayMinuten Verzögerung in Verantwortung der Flugaufsicht
security_delayMinuten Verzögerung in Verantwortung der Sicherheit am Boden
late_aircraft_delayMinuten Verzögerung in Verantwortung des Flugzeugs
 

Zusammenfassung:SQL-Anweisung eingeben bei der Verbindung mit der Datenbank (Erweiterte Optionen)SQL-Statement von einzelnen Schritten anzeigen über Systemeigene Abfragen (Rechtsklick auf einen Schritt unter Angewendete Schritte)ursprüngliche SQL-Anweisung zum Laden der Daten verändern im Erweiterten Editor

2- Daten bereinigen:

Hinweis: Zeitangaben konvertierenIch habe die Spalten mit Zeitangaben zuerst in Textspalten umgewandelt. Anschließend habe ich die Werte in das Format hhmmss gebracht, indem ich über den Tab "Spalte hinzufügen" die Option "Spalte aus Beispielen" genutzt habe. Den dabei erzeugten M-Code habe ich für die übrigen Zeitspalten kopiert und angepasst. Dabei habe ich nicht vergessen, die ungewöhnliche Uhrzeit 240000 geeignet zu ersetzen, bevor ich die Spalten in den Datentyp "Zeit" umgewandelt habe.Hinweis: Ankunft oder AbflugIch habe eine berechnete Spalte erstellt, die angibt, ob es sich bei dem Flug um Ankunft oder Abflug handelt, um das Filtern zu erleichtern. Diese Spalte habe ich direkt in meiner SQL-Query erstellt.In SQL habe ich diese Spalte mittels CASE WHEN erstellt. Für die beiden Fälle habe ich aussagekräftige Zeilenwerte festgelegt und einen Spaltenalias genutzt. Alternativ habe ich auch eine bedingte Spalte in Power Query erstellt.Hinweis: Zu früh ist auch unpünktlichDa nicht nur verspätete, sondern auch zu frühe Flüge den Ablauf stören können, habe ich mich für den Absolutwert der „Verspätungen“ interessiert. Berechnete Spalten mit diesen Absolutwerten waren nützlich, um nachfolgende Berechnungen zu vereinfachen. Auch das habe ich leicht mit SQL umgesetzt.Hier hat mir die SQL-Funktion ABS oder in Power Query der Reiter "Transformieren", Abschnitt "Zahlenspalte", geholfen. Zusätzlich habe ich eine weitere Spalte erstellt, die angibt, ob ein Flug pünktlich ist oder nicht.

3- Datenanalyse:

Eine getrennte Betrachtung nach Abflug oder Ankunft sollte wahlweise möglich sein. Ich habe die Möglichkeit geschaffen, Flüge entweder nach Abflug oder Ankunft getrennt zu betrachten.Ein Flug galt als unpünktlich, wenn er 5 Minuten oder mehr von der geplanten Zeit abwich. Ich habe festgelegt, dass ein Flug als unpünktlich gilt, wenn er 5 Minuten oder mehr von der geplanten Zeit abweicht. Dies galt sowohl für verspätete als auch für verfrühte Flüge.Die durchschnittliche Unpünktlichkeit sollte sich auf die Grundgesamtheit aller unpünktlichen Flüge beziehen. Ich habe die durchschnittliche Unpünktlichkeit nicht einfach als Mittelwert aller Datenpunkte berechnet, sondern mich auf die Grundgesamtheit aller unpünktlichen Flüge bezogen.Verwende Klarnamen für die Airlines, nicht nur die Codes. Ich habe die Klarnamen für die Airlines verwendet und nicht nur die Codes.Platziere nicht zu viele Visuals auf einer Berichtsseite, sonst leidet die Übersichtlichkeit. Ich habe darauf geachtet, nicht zu viele Visuals auf einer Berichtsseite zu platzieren, um die Übersichtlichkeit zu bewahren. Ggf. habe ich mehrere Seiten pro Teilaufgabe genutzt.