话不多说,如图
上代码
#数组都是按从小到大排过序的
#计算中位数
def count_median(lis):
if len(lis) % 2 == 0:
mid = float((lis[len(lis) / 2] + lis[len(lis) / 2 - 1])) / 2
else:
mid = lis[len(lis) / 2]
return mid
#计算上下四分位数
def count_quartiles(lis):
q1 = 1 + (float(len(lis)) - 1) * 1 / 4
q3 = 1 + (float(len(lis)) - 1) * 3 / 4
return q1, q3
#计算上下边缘
def count_margin(q1, q3):
q4 = q3 + 1.5 * (q3 - q1)
q5 = q1 - 1.5 * (q3 - q1)
return q4, q