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])





你可能感兴趣的:(统计学,python)