Navigation: Templates > Guide to all Templates > Additional Libraries and Templates > Statistics Library >====== MEDIAN (median of a set) ====== | |
MEDIAN(dataset)
MEDIAN | Returns the middle value of an ordered numeric data set. |
dataset | The label of a QUEUE with its first component field defined as a REAL. |
MEDIAN finds the value which is exactly in the middle when all of the data is in (sorted) order from low to high, or the mean of the two data values which are nearest the middle. 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 median is 3, or given the data set: [1,2,4,5] the median is (2 + 4) / 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
MedianOfSet 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
MedianOfSet = MEDIAN(StatSetX) !call MEDIAN