Python statistics | median_low()

Median is often referred to as the robust measure of 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 interable 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

filter_none

edit
close

play_arrow

link
brightness_4
code

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

chevron_right


Output :

Low median of the data-set is 3 

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

filter_none

edit
close

play_arrow

link
brightness_4
code

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

chevron_right


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

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python code to demonstrate the
# working of median_low()
  
# importing statistics module
from statistics import median_low
  
# Importing fractions module as fr
from fractions import Fraction as fr
  
# tuple of positive integer numbers
data1 = (2, 3, 4, 5, 7, 9, 11)
  
# tuple of a set of floating point values
data2 = (2.4, 5.1, 6.7, 8.9)
  
# tuple of a set of fractional numbers
data3 = (fr(1, 2), fr(44, 12),
         fr(10, 3), fr(2, 3))
  
# tuple of a set of negative integers
data4 = (-5, -1, -12, -19, -3)
  
# tuple of set of positive
# and negative integers
data5 = (-1, -2, -3, -4, 4, 3, 2, 1)
  
# Print low_median() of given data-sets
print("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)))

chevron_right


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

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python code to demonstrate
# StatisticsError of median_low()
  
# importing the statistics module
from statistics import median_low
  
# creating an empty data-set
empty = []
  
# will raise StatisticsError
print(median_low(empty))

chevron_right


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.



My Personal Notes arrow_drop_up

Its lonely at the top

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.




Article Tags :

Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.