1. 程式人生 > >python求四分位數的方法(附純python寫法)

python求四分位數的方法(附純python寫法)

資料來源:

nums=[]

使用numpy很簡單:

import numpy as np

np.percentile(nums, (25, 50, 75), interpolation='midpoint')

    返回一個依次包含所有四分位數的列表:[25.5 40.  42.5]。

    可以很容易看出來,這個方法可以一次性求任意的分位數。

附純python寫法:

def median(x):
    x = sorted(x)
    length = len(x)
    mid, rem = divmod(length, 2)    # divmod函式返回商和餘數
    if rem:
        return x[:mid], x[mid+1:], x[mid]
    else:
        return x[:mid], x[mid:], (x[mid-1]+x[mid])/2

lHalf, rHalf, q2 = median(nums)
print(median(lHalf)[2])
print(q2)
print(median(rHalf)[2])