一、numpy“通用函数”(ufunc)包括以下几种:

  1. 元素级函数(一元函数):对数组中的每个元素进行运算
  2. 数组级函数:统计函数,像聚合函数(例如:求和、求平均)
  3. 矩阵运算
  4. 随机生成函数
常用一元通用函数、数组级函数
函数名 作用 例子 结果

np.abs()、sum()、mean()

std()、var()

计算绝对值、求和、求平均值

求标准差、方差

arr = np.array([1,2,-3,-4,5])

np.abs(arr)

array([1, 2, 3, 4, 5])

np.min()、max()、

argmin ()、argmax()

最小值、最大值、

最小值索引、最大值索引

arr = np.array([1.1,2.2,-3.3])
np.argmin(arrr)

2
np.square() 计算各元素的平方

arr = np.array([1,2,-3,-4,5])

np.square(arr)

array([ 1,  4,  9, 16, 25], dtype=int32)
 np.sqrt() 计算各元素的平方根 

arr = np.array([1,2,4,5])

np.sqrt(arr)

array([1.        , 1.41421356, 2.        , 2.23606798])
 np.exp() 计算各元素以e为底的指数(ex) 

arr = np.array([1,2,4,5])

np.exp(arr)

 array([  2.71828183,   7.3890561 ,  54.59815003, 148.4131591 ])

np.log()、

log10()、log2()

 计算以e、10、2为底的对数 arr = np.array([10,100,1000])
np.log10(arr)
 array([1., 2., 3.])
 np.sign()

返回各元素的正负号:

1(正数)、0(零)、-1(负数)

arr = np.array([1,2,-3,-4,5,0])

np.sign(arr)

 array([ 1,  1, -1, -1,  1,  0])
 np.sort()

对数组进行排序(默认升序)

多维数组可以在单个轴上进行排序

 arr = np.array([1,2,-3,-4,5,0])

np.sort(arr)

 array([-4, -3,  0,  1,  2,  5])
 np.unique()

去重--->结果默认升序排列

同python中的集合set()

arr = np.array([1,2,-3,2,1,0])

arr.unique()

 array([-3,  0,  1,  2])
 np.ceil()  向上取整 arr = np.array([1.1,2.2,-3.3])
np.ceil(arr)
 array([ 2.,  3., -3.])
 floor() 向下取整 arr = np.array([1.1,2.2,-3.3])
np.floor(arr)
 array([ 1.,  2., -4.])
 np.rint() 四舍五入  arr = np.array([1.1,2.2,-3.3])
np.rint(arr)
 array([ 1.,  2., -3.])
 np.modf() 小数和整数分离  arr = np.array([1.1,2.2,-3.3])
np.modf(arr)
 (array([ 0.1,  0.2, -0.3]), array([ 1.,  2., -3.]))
np.sin()、cos()、tan() 正弦、余弦、正切 同上  
np.cumsum() 求数组元素累计和 arr = np.array([1,2,3])
np.cumsum(arr)
array([1, 3, 6], dtype=int32)
np.cumprod() 求数组元素的累积积 arr = np.array([1,2,3])
np.cumprod(arr)
array([1, 2, 6], dtype=int32)

二、numpy.linalg模块包括许多矩阵运算

常用的有:

函数名 作用 例子 结果
np.diag()

返回矩阵的主对角线元素,

若输入一维数组则返回对角矩阵

arr=np.array([[1,2,3],[2,2,3],[3,5,1]])
np.diag(arr)
array([1, 2, 1])
np.trace() 计算对角线元素之和 np.trace(arr) 4
np.linalg.det() 计算矩阵的行列式 np.linalg.det(arr) 12.999999999999995
np.linalg.inv() 计算矩阵的逆 np.linalg.inv(arr) array([[-1.00000000e+00,  1.00000000e+00, -9.25185854e-18],
       [ 5.38461538e-01, -6.15384615e-01,  2.30769231e-01],
       [ 3.07692308e-01,  7.69230769e-02, -1.53846154e-01]])
np.dot() 矩阵点乘 arr2 = np.array([[1,2],[2,3],[3,4]])
np.dot(arr,arr2)
array([[14, 20],
       [15, 22],
       [16, 25]])

三、numpy.random模块包括许多生成随机数的函数

常用的有:

函数名 作用 例子 结果
np.random.rand() 产生(0,1)均匀分布的随机数 arr = np.random.rand(2,2) array([[0.28576059, 0.87691219],
          [0.98174158, 0.37963998]])
np.random.randint()

从给定上下限范围内随机选取整数

(默认是0-1之间)

arr = np.random.randint(0,5,size=(2,2)) array([[4, 3],
       [2, 1]])
np.random.binomial()

产生二项分布的随机数,

有两个参数:n、p;且可用size指定形状

arr=np.random.binomial(20,0.3) 7
np.random.normal()

产生正态分布的随机数

有两个参数:均值μ、标准差σ;且可用size指定形状

arr = np.random.normal(0,0.4,size=(2,2))

 array([[ 0.19689244,  0.1862919 ],
       [ 0.5238639 ,  0.22638041]])
np.random.randn()

产生标准正态分布的随机数

即均值μ=0、标准差σ=1

 arr = np.random.randn(2,3)  array([[ 0.25079709, -0.35966478, -1.28589538],
       [-1.02478972, -0.2292332 , -1.40625537]])
np.random.seed()

确定随机数生成的种子,让生成随机数的过程可重现(不设置seed时,每次生成的随机数将不同)

np.random.seed(5)
np.random.rand(2,2)

np.random.seed(5)
np.random.rand(2,3)

array([[0.22199317, 0.87073231],
       [0.20671916, 0.91861091]])

array([[0.22199317, 0.87073231, 0.20671916],
       [0.91861091, 0.48841119, 0.61174386]])

1-Numpy的通用函数(ufunc)的更多相关文章

  1. numpy之通用函数ufunc

    通用函数-元素级数组函数 通用函数(ufunc)是一种对ndarray执行元素级运算的函数. 一元ufunc import numpy as np arr = np.arange(-10,10,2) ...

  2. 初探numpy——numpy常用通用函数

    numpy通用函数 快速的逐元素数组函数,也可以称为ufunc,对ndarray数据中的元素进行逐元素操作的函数 一元通用函数 函数名 描述 abs.fabs 取绝对值 sqrt 计算平方根,等同于a ...

  3. Numpy 的通用函数:快速的元素级数组函数

    通用函数: 通用函数(ufunc)是一种对ndarray中的数据执行元素级运算的函数.你可以将其看作简单函数(接受一个或多个标量值,并产生一个或度过标量值)的矢量化包装器. 简单的元素级变体,如sqr ...

  4. numpy的通用函数:快速的元素级数组函数

    通用函数(ufunc)是对ndarray中的数据执行元素级运算的函数.可看作简单函数的矢量化包装. 一元ufunc sqrt对数组中的所有元素开平方 exp对数组中的所有元素求指数 In [93]: ...

  5. numpy 的通用函数

    1 CSV文件 CSV,Comma Separate Values,是逗号分隔文件的缩写,是一种存储数据的纯文本格式,通常用于存储电子表格或数据库软件 特点 每条记录占一行 以逗号为分隔符 逗号前后的 ...

  6. numpy的通用函数

    通用函数:快速的元素级数组函数 通用函数是一种对ndarry中的数据执行元素级运算的函数,可以看作是简单函数(接受一个或多个标量值,并产生一个或多个标量值)的矢量化包装器. 一元func: abs丶f ...

  7. numpy通用函数

    numpy的通用函数可以对数组进行向量化操作,可以提高数组元素的重复计算的效率. 一.numpy的算数运算符都是对python内置符的封装 算数运算符 >>> import nump ...

  8. NumPy的详细教程

    原文  http://blog.csdn.net/lsjseu/article/details/20359201 主题 NumPy 先决条件 在阅读这个教程之前,你多少需要知道点python.如果你想 ...

  9. 学习笔记之NumPy

    NumPy — NumPy http://www.numpy.org/ NumPy is the fundamental package for scientific computing with P ...

随机推荐

  1. HTML条件注释_关于IE条件注释

    普通的HTML注释形式是 <!-- 注释 --> 而IE5~IE9这5个版本的IE浏览器还另外支持一种特殊的if条件注释(感觉有点类似模板渲染时的语法结构) <!--[if IE]& ...

  2. React学习路径快速进入AntDesignPro开发

    好久没有写博客,有空再来记一下.最近在整些小东西,需要用到前端,最开始本着对nodejs的动不动几百兆插件的恐惧, 于是使用自己以前写的 OSS.Pjax 小框架(类似国外的Pjax,利用pushSt ...

  3. 深入Mybatis源码——配置解析

    @ 目录 前言 正文 配置解析 1. cacheRefElement/cacheElement 2. resultMapElements 3. sqlElement 4. buildStatement ...

  4. 萌新计划 PartⅠ

    Part Ⅰ web1-7 题目总体代码框架如下,其中过滤内容不同,大体上通过构造出id=1000类似的语句进行绕过,得到flag <?php # 包含数据库连接文件 include(" ...

  5. scala 数据结构(十一):流 Stream、视图 View、线程安全的集合、并行集合

    1 流 Stream stream是一个集合.这个集合,可以用于存放无穷多个元素,但是这无穷个元素并不会一次性生产出来,而是需要用到多大的区间,就会动态的生产,末尾元素遵循lazy规则(即:要使用结果 ...

  6. hihoCoder 1041 国庆出游 最详细的解题报告

    题目来源:国庆出游 解题思路(下面是大神的写的): 把题目中的序列称作S,树称作T.那么对于S中的任意节点x,x的子孙节点如果在S出现的话,那么这个子孙节点的位置是有一定要求的:x的所有子孙节点在S中 ...

  7. Quartz.Net系列(十三):DateBuilder中的API详解

    1.DateOf.ToDayAt.TomorrowAt DateOf:指定年月日时分秒 public static DateTimeOffset DateOf(int hour, int minute ...

  8. 用前端姿势玩docker【三】基于nvm的前端环境构建技巧

    前言 安装docker啥的就不说了,这里重点强调一下,docker的环境问题.本人的环境: 虚拟机centos => docker => NAT => container 因为需要不 ...

  9. 不会吧,有人用了两年Spring, 居然不知道包扫描是怎么实现的

    全栈的自我修养: 0004 Java 包扫描实现和应用(File篇) I may not be able to change the past, but I can learn from it. 我也 ...

  10. Websphere修改web.xml不生效的解决办法(转)

    在websphere下部署了一个java工程后,如果修改了web.xml文件,重新启动这个java工程发现websphere并没有自动加载web.xml文件,即修改后的web.xml并不起作用,除非重 ...