NumPy统计函数的实现方法

yipeiwu_com5年前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()

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

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

相关文章

netbeans7安装python插件的方法图解

netbeans7安装python插件的方法图解

我们可以手动来添加地址和安装。如图所示: 方法:NetBeans界面,“工具”->“插件”, 点击“设置”->点击“添加”,然后 添加一个更新中心地址 ,名称可以任意,U...

python中实现将多个print输出合成一个数组

比如有下面一段代码: for i in range(10): print ("%s" % (f_list[i].name)) 该代码段的执行,会生成如下的10行“name”属性...

详解Python中内置的NotImplemented类型的用法

它是什么?   >>> type(NotImplemented) <type 'NotImplementedType'> NotImpl...

再谈Python中的字符串与字符编码(推荐)

再谈Python中的字符串与字符编码(推荐)

本节内容: 1.前言 2.相关概念 3.Python中的默认编码 4.Python2与Python3中对字符串的支持 5.字符编码转换 一、前言 Python中的字符编码是个老...

使用python打印十行杨辉三角过程详解

使用python打印十行杨辉三角过程详解

杨辉三角,是二项式系数在三角形中的一种几何排列 每个数等于它上方两数之和。 每行数字左右对称,由1开始逐渐变大。 第n行的数字有n项。 第n行数字和为2n-1。 第...