四分位数和箱线图

四分位数

四分位数(Quartile)也称四分位点,是指在统计学中把所有数值由小到大排列并分成四等份,处于三个分割点位置的数值。

箱线图

利用数据中的五个统计量:最小值、第一四分位数、中位数、第三四分位数与最大值来描述数据的一种方法。

 

四分位差:IQR = Q3-Q1,IQR(interquartile range)

异常值:OUTLIERQ3+1.5IQR
 

from matplotlib import pyplot as plt
list = [1,2,3,4,5,6,7,8,20,18,15,100,80,3]

#求list的四分位点
def quartile_value(list,num):
    list.sort()
    location = num *(len(list)+1)/4
    location_int = int(location)
    quartile = list[location_int-1]*(location_int+1-location)+list[location_int+1-1]*(location-location_int)
    return quartile

Q1 = quartile_value(list,1)
Q2 = quartile_value(list,2)
Q3 = quartile_value(list,3)

IQR = Q3 - Q1
#较小值的内限
inner_outlier_low = Q1 - 1.5 * IQR
#较大值的内限
inner_outlier_high = Q3 + 1.5 * IQR

#较小值的外限
outer_outlier_low = Q1 - 3 * IQR
outer_outlier_high = Q3 + 3 * IQR

#温和异常值
for value in list:
    if outer_outlier_low outer_outlier_high:
        print(value)

plt.boxplot(list,labels=['Data Analays'])
plt.title('Watch Data')
plt.show()

 

你可能感兴趣的:(数据处理)