Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Max of a calculated dimension in load script

What I need

Maximum proportion of delayed flights by airport ID. Ie., (max (delayed flights/ non cancelled & non delayed flights))

I want to create this dimension in the load script.


Data

The data file contains:

  • flight dates (FL_DATE)
  • origin of the flight (ORIGIN_AIRPORT_ID)
  • status of whether the flight was delayed or not (DEP_DELAY_GROUP) //more than 0 means its delayed. if there are no values, it means the flight is cancelled or diverted)

FL_DATEORIGIN_AIRPORT_IDDEP_DELAY_GROUP
1/1/201512478-1
2/1/201512478-1
3/1/201512478-1
4/1/201512478-1
5/1/201512478-1
1/1/201512892-1
2/1/201512892-1
3/1/2015128921
4/1/20151289210
5/1/201512892-1
26/1/201512892
27/1/201512892
28/1/2015128922
29/1/201512892-1
30/1/201512892-1
31/1/201512892-1
1/1/201512478-1
2/1/201512478-1
3/1/201512478-1
4/1/201512478-1
5/1/201512478-1
6/1/201512478-1
7/1/201512478-1
8/1/201512478-1
9/1/2015124780

Would really appreciate help!

11 Replies
t_chetirbok
Creator III
Creator III

In your exampleL Airport 12892 has 9 non cancelled flights and 3 delayed, that's mean 33 %. Is that right? if yes, see my first record.

Peter_Cammaert
Partner - Champion III
Partner - Champion III

So this is different from your original requirement that said:

(max (delayed flights/ non cancelled & non delayed flights))


Now you want:


(max (delayed flights/ non cancelled & non delayed flights & delayed flights))


Correct?


If so, take the max() of the following table in a text box or another UI object:


Ratios:

LOAD ORIGINAL_AIRPORT_ID,

    COUNT(IF (DEP_DELAY_GROUP > 0, 1)) / COUNT(DEP_DELAY_GROUP) AS DEL_RATIO

RESIDENT RawData

WHERE IsNum(DEP_DELAY_GROUP)

GROUP BY ORIGINAL_AIRPORT_ID;


or calculate the single max record by adding the following LOAD after the previous LOAD:


MaxRatio:

LOAD Max(DEL_RATIO) AS MAX_RATIO,

     FirstSortedValue(ORIGIN_AIRPORT_ID, -DEL_RATIO) AS MAX_RATIO_AIRPORT_ID

RESIDENT Ratios;

See attachment (v2).

Best,

Peter