# median_low() function in Python statistics module

Median is often referred to as the robust measure of the central location and is less affected by the presence of outliers in data. statistics module in Python allows three options to deal with median / middle elements in a data set, which are median(), median_low() and median_high(). The low median is always a member of the data set. When the number of data points is odd, the middle value is returned. When it is even, the smaller of the two middle values is returned. Let’s see how median_low() works.

Syntax : median_low( [data-set] )

Parameters : [data-set] : Takes in a list, tuple or an iterable set of numeric data.

Returntype : Returns the low median of numeric data. Low median is a member of actual data-set.

Exceptions : StatisticsError is raised when data-set is empty.

Code #1 : Working

## Python3

 # Python code to demonstrate the # working of median_low() # importing the statistics moduleimport statistics # simple list of a set of integersset1 = [1, 3, 3, 4, 5, 7] # Note: low median will always be#        a member of the data-set. # Print low median of the data-setprint("Low median of the data-set is % s "         % (statistics.median_low(set1)))

Output :

Low median of the data-set is 3

Code #2 : Working of median_low() and median to distinguish between them.

## Python3

 # Python code to demonstrate the# working of median_low() # importing the statistics moduleimport statistics # simple list of a set of integersset1 = [1, 3, 3, 4, 5, 7] # Print median of the data-set # Median value may or may not# lie within the data-setprint("Median of the set is % s"       % (statistics.median(set1))) # Print low median of the data-setprint("Low Median of the set is % s "        % (statistics.median_low(set1)))

Output :

Median of the set is 3.5
Low Median of the set is 3

Code #3 : Working of median_low() on a varying range of data-set

## Python3

 # Python code to demonstrate the# working of median_low() # importing statistics modulefrom statistics import median_low # Importing fractions module as frfrom fractions import Fraction as fr # tuple of positive integer numbersdata1 = (2, 3, 4, 5, 7, 9, 11) # tuple of a set of floating-point valuesdata2 = (2.4, 5.1, 6.7, 8.9) # tuple of a set of fractional numbersdata3 = (fr(1, 2), fr(44, 12),         fr(10, 3), fr(2, 3)) # tuple of a set of negative integersdata4 = (-5, -1, -12, -19, -3) # tuple of set of positive# and negative integersdata5 = (-1, -2, -3, -4, 4, 3, 2, 1) # Print low_median() of given data-setsprint("Low Median of data-set 1 is % s" % (median_low(data1)))print("Low Median of data-set 2 is % s" % (median_low(data2)))print("Low Median of data-set 3 is % s" % (median_low(data3)))print("Low Median of data-set 4 is % s" % (median_low(data4)))print("Low Median of data-set 5 is % s" % (median_low(data5)))

Output :

Low Median of data-set 1 is 5
Low Median of data-set 2 is 5.1
Low Median of data-set 3 is 2/3
Low Median of data-set 4 is -5
Low Median of data-set 5 is -1

Code #4 : Raising StatisticsError

## Python3

 # Python code to demonstrate# StatisticsError of median_low() # importing the statistics modulefrom statistics import median_low # creating an empty data-setempty = [] # will raise StatisticsErrorprint(median_low(empty))

Output :

Traceback (most recent call last):
File "/home/5f3e758236f872d014f9d741743c30a4.py", line 10, in
print(median_low(empty))
File "/usr/lib/python3.5/statistics.py", line 376, in median_low
raise StatisticsError("no median for empty data")
statistics.StatisticsError: no median for empty data

Applications : median_low() is used when the data is discrete and prefer median to be actual point in data rather than an extrapolated one.

Previous
Next