NumPy统计函数的实现方法

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()

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

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

(0)

相关推荐

  • Python实现Mysql数据统计及numpy统计函数

    Python实现Mysql数据统计的实例代码如下所示: import pymysql import xlwt excel=xlwt.Workbook(encoding='utf-8') sheet=excel.add_sheet('Mysql数据库') sheet.write(0,0,'库名') sheet.write(0,1,'表名') sheet.write(0,2,'数据条数') db=pymysql.connect('192.168.1.74','root','123456','xx1'

  • NumPy统计函数的实现方法

    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

  • Python安装Numpy和matplotlib的方法(推荐)

    Python安装Numpy和matplotlib的方法(推荐) 注意: 下载的库名中cp27代表python2.7,其它同理. 在shell中输入import pip; print(pip.pep425tags.get_supported())可以获取到pip支持的文件名还有版本 ================安装Numpy==================== 下载地址: https://pypi.python.org/pypi/numpy  类似 numpy-1.13.3-cp36-no

  • python 读取文件并把矩阵转成numpy的两种方法

    在当前目录下: 方法1: file = open('filename') a =file.read() b =a.split('\n')#使用换行 len(b) #统计有多少行 for i in range(len(b)): b[i] = b[i].split()#使用空格分开 len(b[0])#可以查看第一行有多少列. B[0][311]#可以查看具体某行某列的数 import numpy as np b = np.array(b)#转成numpy形的 type(b) # 输出<输出clas

  • pybind11和numpy进行交互的方法

    使用一个遵循buffer protocol的对象就可以和numpy交互了. 这个buffer_protocol要有哪些东西呢? 要有如下接口: struct buffer_info { void *ptr; ssize_t itemsize; std::string format; ssize_t ndim; std::vector<ssize_t> shape; std::vector<ssize_t> strides; }; 其实就是一个指向数组的指针+各个维度的信息就可以了.

  • 对numpy中的where方法嵌套使用详解

    如同for循环一样,numpy中的where方法可以实现嵌套功能.这是简化嵌套式矩阵逻辑的一个很好的方法. 假设有一个矩阵,需要把小于0的元素改成-1,大于0的元素改成1,而等于0的时候不做修改. 那么,对应的代码示范如下: #!/usr/bin/python import numpy as np data = np.random.randn(4,5) data1 =np.where(data > 0,1, np.where(data <0,-1,0)) print("dataval

  • 利用ctypes获取numpy数组的指针方法

    如下所示: import numpy as np from ctypes import * a = np.asarray(range(16), dtype=np.int32).reshape([4,4]) if not a.flags['C_CONTIGUOUS']: a = np.ascontiguous(a, dtype=a.dtype) # 如果不是C连续的内存,必须强制转换 a_ctypes_ptr = cast(a.ctypes.data, POINTER(c_int)) #转换为ct

  • python安装numpy和pandas的方法步骤

    最近要对一系列数据做同比比较,需要用到numpy和pandas来计算,不过使用python安装numpy和pandas因为linux环境没有外网遇到了很多问题就记下来了.首要条件,python版本必须是2.7以上. linux首先安装依赖包 yum -y install blas blas-devel lapack-devel lapack yum -y install seaborn scipy yum -y install freetype freetype-devel libpng lib

  • numpy concatenate数组拼接方法示例介绍

    数组拼接方法一 思路:首先将数组转成列表,然后利用列表的拼接函数append().extend()等进行拼接处理,最后将列表转成数组. 示例1: >>> import numpy as np >>> a=np.array([1,2,5]) >>> b=np.array([10,12,15]) >>> a_list=list(a) >>> b_list=list(b) >>> a_list.exten

  • numpy中的ndarray方法和属性详解

    NumPy数组的维数称为秩(rank),一维数组的秩为1,二维数组的秩为2,以此类推.在NumPy中,每一个线性的数组称为是一个轴(axes),秩其实是描述轴的数量.比如说,二维数组相当于是一个一维数组,而这个一维数组中每个元素又是一个一维数组.所以这个一维数组就是NumPy中的轴(axes),而轴的数量--秩,就是数组的维数. Numpy库中的矩阵模块为ndarray对象,有很多属性:T,data, dtype,flags,flat,imag,real,size, itemsize,nbyte

随机推荐