统计学(三)——简单程序实现求平均数中位数众数(待完善)

平均数、中位数、众数

举个例子:

23,29,20,32,23,21,33,25,32,32,26,27

均值:25.75-衡量集中趋势的方法,异常值出现的时候容易产生偏差
中位数:24-集中测试的另一个方法,不受异常值影响
众数:23-数据集中出现频率最多的数

import numpy as np
from scipy import stats

x = np.array([23,29,20,32,23,21,33,25,32,32,26,27])

def _mean(x):
    return np.mean(x)

def _median(x):
    return np.median(x)

def _mode(x):
    counts = np.bincount(x)
    #返回众数,但是,由于索引值是从0开始的,所以这种求众数的方法只能用在非负数据集。
    return np.argmax(counts)

#众数推荐的实现方式
def _mode2(x):
    return stats.mode(x)[0][0]

print(_mean(x))
print(_median(x))
print(_mode2(x))

结果:

 



posted @ 2019-01-29 17:54  LeoLRH  阅读(563)  评论(0)    收藏  举报