Navigation: Templates > Guide to all Templates > Additional Libraries and Templates > Statistics Library >====== MIDRANGE (midrange of a set) ====== | |
MIDRANGE(dataset)
MIDRANGE | Returns the average of the highest and lowest value in a numeric set. |
dataset | The label of a QUEUE with its first component field defined as a REAL. |
MIDRANGE computes the mean of the smallest and largest values in a data set. The function operates on the numeric set defined by all the entries in the first component of the designated QUEUE (dataset).
For example, given the data set: [1,2,3,4,5] the midrange is (1 + 5) / 2 = 3.
The passed data set does not have to be sorted. The function copies the passed set. The passed data set is unchanged.
Return DataType: REAL
Example:
StatSetX QUEUE,PRE()
X REAL
END
MidrangeOfSet REAL
CODE
FREE(StatSetX) !free the QUEUE
CLEAR(STADAT:RECORD) !clear the record buffer
STADAT:Id = STA:Id !prime the record buffer
STADAT:ItemNumber = 1
SET(STADAT:KeyIdItemNumber,STADAT:KeyIdItemNumber !position file pointer
LOOP !load the QUEUE
NEXT(StatisticsData) !read next record
IF ERRORCODE() OR STADAT:Id NOT = STA:Id
BREAK
ELSE
StatSetX:X = STADAT:X !load the QUEUE buffer
ADD(StatSetX) !add to the QUEUE
END
END
MidrangeOfSet = MIDRANGE(StatSetX) !call MIDRANGE