NumPy统计函数的实现方法

yipeiwu_com6年前Python基础

numpy.amin()和numpy.amax()

numpy.amin()用于计算数组中元素沿着指定轴的最小值。

numpy.amax()用于计算数组中元素沿着指定轴的最大值

a=np.array([1,3,6],[3,4,11],[6,1,4])
print(np.amin(a,1) #每行最小值
print(np.amin(a,0) #每列最小值
print(np.amax(a)  #所有元素中最大值
print(np.amax(a,1)) #j每行的最大值

结果:

[1 3 1]
[1 1 4]
11
[ 6 11  6]

numpy.ptp()

用来计算数组中元素的最大值与最小值的差(最大值-最小值)。

numpy.percentile()

表示百分比

numpy.percentile(a,q,axis)
  • a:输入数组

  • q:要计算的百分位数

  • axis:沿着它计算百分位数的轴

对于一个数组,我们设置它的百分位数为20,则我们可以推算出在该数组排序中在百分之20上的值是多少,例如:

percentail百分数
a = np.array([[21, 60, 4], [10, 20, 1]])
print('数组a:')
print(a)

print('调用 percentile() 函数:')
 50% 的分位数,就是 a 里排序之后的中位数
print(np.percentile(a, 20))
 axis 为 0,在纵列上求
print(np.percentile(a, 20, axis=0))
 axis 为 1,在横行上求
print(np.percentile(a, 20, axis=1))
 保持维度不变
print(np.percentile(a, 20, axis=1, keepdims=True))

结果:

数组a:
[[21 60  4]
 [10 20  1]]
调用 percentile() 函数:
4.0
[12.2 28.   1.6]
[10.8  4.6]
[[10.8]
 [ 4.6]]

Process finished with exit code 0

标准差

std=sqrt(mean((x-x.mean()) * * 2)

其中mean((x-x.mean()) * * 2)是指每个样本与全体样本值的平均数之差,即方差,标准差就是方差的平方根。

其它统计函数

numpy.mediam()

用于计算数组a中元素的中位数

numpy.average()

将各数值乘以相应的权数,然后加总求和得到总体值,再除以总的单位数。即用来计算加权平均数

numpy.mean()

返回数组元素的算术平均值

以上就是本文的全部内容,希望对大家的学习有所帮助。

相关文章

使用python实现递归版汉诺塔示例(汉诺塔递归算法)

利用python实现的汉诺塔。带有图形演示 复制代码 代码如下:from time import sleep def disp_sym(num, sym):  &nb...

python按时间排序目录下的文件实现方法

废话不多说,直接上代码: python文件夹遍历,文件操作,获取文件修改创建时间可以去网上参考其他文章。 如: os.path.getmtime() 函数是获取文件最后修改时间 o...

解决pycharm下os.system执行命令返回有中文乱码的问题

解决pycharm下os.system执行命令返回有中文乱码的问题

如下所示: source = ['C:\\Users\\admin\\Desktop\\pythonLearning'] target_dir = 'C:\\Users\\admin...

使用python将mdb数据库文件导入postgresql数据库示例

mdb格式文件可以通过mdbtools工具将内中包含的每张表导出到csv格式文件。由于access数据库和postgresQL数据库格式上会存在不通性,所以使用python的文件处理,将...

Python中join和split用法实例

join用来连接字符串,split恰好相反,拆分字符串的。 不用多解释,看完代码,其意自现了。 复制代码 代码如下: >>>li = ['my','name','is'...