FlightAware Discussions

FlightCancellationStatistics questions about data returned


#1

Hello, we are trying to query some data about Flight cancellations and delays to show report in our Web page.
Our report gives information about few airports ( JFK, EWR , etc. ). We need to show percentage of how many flights were canceled/delayed for arriving and departing flights compared to total flights in specific airport.

We have some questions:

  1. when you specify ident_filter = JFK ( type_matching = origin or destination ) we don’t get any results for this airport, because in data returned airport code for JFK is KJFK, but when querying other methods like AirportInfo you get results if you specify airport_code = JFK because it has “alternate_ident”.

*Will it be fixed to give results when you specify only JFK ( same as airportinfo gives results for this code) or we need always ensure that US airports starts with letter K ?

2)when you specify “ident_filter” : “KJFK”, “time_period” : “today”, “type_matching” : “origin” to get departures from JFK you get response with:
“total_cancellations_worldwide”: x,
“total_cancellations_national”: x,
“total_delays_worldwide”: x,

And Matching array containing all airports info.
*Why you see KFJK record in Matching array? What information this record gives us ?

Example ( …\FlightCancellationStatistics?howMany=150&time_period=today&type_matching=origin&ident_filter=KJFK ) :
{
“FlightCancellationStatisticsResult”: {
“total_cancellations_worldwide”: 2,
“total_cancellations_national”: 2,
“total_delays_worldwide”: 8,
“next_offset”: 150,
“type_matching”: “origin”,
“matching”: [
{
“ident”: “KJFK”,
“description”: “John F Kennedy Intl”,
“cancellations”: 1,
“delays”: 0,
“total”: 636
},
{
“ident”: “LSZH”,
“description”: “Zurich (Kloten)”,
“cancellations”: 1,
“delays”: 0,
“total”: 3
},…
]
}
*Is matching array ordered by Cancellations Desc?

  1. if we want to know Total flights ( success + canceled + delay ) we need to Sum “total” in matching? Also do we need to include JFK record in Sum?. What bother us that this record has very big “Total” value compared to other airports in matching ?

  2. Maybe this record shows us Total flights for JFK ( JFK total + all other airports total ? ) and we just need to select it from matching to get Total_Total ?
    “matching”: [
    {
    “ident”: “KJFK”,
    “description”: “John F Kennedy Intl”,
    “cancellations”: 1,
    “delays”: 0,
    “total”: 636
    }, …
    ]

*I have calculated Total from all matching records excluding JFK ( 636 ) and i got similar value ~620. Does this mean that JFK had only 16 departure?

  1. any chance that in near future you will provide Total_Total flight sum ( like now you provide total_cancellations_national ) in response JSON ?

If something not clear please ask.


#2
  1. FlightXML normally works best with ICAO codes. While IATA codes may work in many queries, conflicting or ambiguous code assignments exist. Use of ICAO codes for airlines and airports is strongly recommended.

  2. The cancellation and delay counts in this example represent flight scheduled to depart KJFK that were cancelled or delayed in the time period. The total is the every scheduled flight that that lists KJFK as its origin. The delays and cancellations are a subset of the total.

  3. The total number of flights that actually flew from KJFK, as the origin, for the time period would be the total less cancellations. When using the “today” time period the total will include scheduled flights in the total that have not actually occurred yet since they are scheduled for later in the “today” time frame. The other airports are flights that were scheduled to depart (type_matching: origin) the listed ident and fly to KJFK (ident_filter: KJFK). These totals are much smaller due to the filter.

  4. The sum of all the non-KJFK totals would be the total flights scheduled from each airport to KJFK. This number should be the same as the total seen for KJFK when change the type_matching filter to destination.

  5. To get the total operations (departures and arrivals) a type matching origin and a type matching destination query could to be made. Summing the two totals would be the total scheduled operations. Subtracting the cancellations from both for a period other than “today” results in the total actual operations. Since the “today” range represents a time period that’s still occurring the values could change between queries.