Solution 1: To find the median of a small python list. One can for example create a simple function:
def calculate_median(l):l = sorted(l)l_len = len(l)if l_len < 1:return Noneif l_len % 2 == 0 :return ( l[(l_len-1)/2] + l[(l_len+1)/2] ) / 2.0else:return l[(l_len-1)/2]l = [1]print( calculate_median(l) )l = [3,1,2]print( calculate_median(l) )l = [1,2,3,4]print( calculate_median(l) )
returns here:
122.5
Another example with some random numbers (between 0 and 10):
from random import randintl = [randint(0,10) for i in range(100)]print( calculate_median(l) )
returns for example 5.0
Solution 2: the numpy function called median
import numpy as npl = [1]print np.median(np.array(l))l = [3,1,2]print np.median(np.array(l))l = [1,2,3,4]print np.median(np.array(l))
Solution 3: the statistics python 3 function: statistics.median:
import statisticsl = [1, 3, 5, 7]median(l)
returns:
4
Note: For a list with a lot of elements see the median of medians algorithms
References
| Links | Site |
|---|---|
| Finding median of list in Python | stackoverflow |
| How to find Median | stackoverflow |
| middle number without using median function, Python | stackoverflow |
| numpy.median | doc scipy |
| statistics.median | python doc |
