通用函数(ufunc)是对ndarray中的数据执行元素级运算的函数。可看作简单函数的矢量化包装。

一元ufunc

sqrt对数组中的所有元素开平方

exp对数组中的所有元素求指数

In [93]: arr = np.arange(10)

In [94]: np.sqrt(arr)
Out[94]:
array([0. , 1. , 1.41421356, 1.73205081, 2. ,
2.23606798, 2.44948974, 2.64575131, 2.82842712, 3. ]) In [95]: np.exp(arr)#exp是求以e(常数2.718281)为底的arr[index]为幂的指数
Out[95]:
array([1.00000000e+00, 2.71828183e+00, 7.38905610e+00, 2.00855369e+01,
5.45981500e+01, 1.48413159e+02, 4.03428793e+02, 1.09663316e+03,
2.98095799e+03, 8.10308393e+03])

二元ufunc

maximum 比较多个数组相同位置的元素,取大的值。注意,相互比较的数组shape必须一致

In [108]: x = np.random.randn(8)

In [109]: y = np.random.randn(8)

In [110]: z = np.random.randn(8)

In [111]: np.maximum(x,y)
Out[111]:
array([-0.01345165, 1.2966861 , 1.92527939, 0.67587486, -0.51879301,
0.03009451, 1.06056746, -0.27034234]) In [112]: np.maximum(x,y,z)
Out[112]:
array([-0.01345165, 1.2966861 , 1.92527939, 0.67587486, -0.51879301,
0.03009451, 1.06056746, -0.27034234])

minimum

modf 分离整数和小数

In [100]: arr = np.random.randn(7)*5
In [103]: np.modf(arr)
Out[103]:
(array([ 0.57608342, 0.6771948 , -0.18724925, -0.21329855, -0.28322408, 0.87645773, -0.89368417]),
array([ 1., 3., -0., -2., -4., 0., -2.]))

下边将会给出两个通用函数表格,一元ufunc和二元ufunc

函数 说明
abs、fabs 计算整数、浮点数或复数的绝对值。对应非复数,可以使用更快的fabs
sqrt 计算各元素平方根,相当于array * * 0.5
square 计算各元素平方,相当于array * * 2
exp 计算各元素的指数
log、log10、log2、log1p 分别以自然对数(底数e)、10、2、(1+x)的对数
sign 计算各元素的正负号:1(正数)、0(零)、-1(负数)
ceil 计算各元素的ceiling值,即大于等于该值的最小整数
floor 计算各元素的floor值,即小于等于该值的最大正数
rint 将各元素值四舍五入到最接近的整数,保留dtype
modf 将数组的小数和整数部分已两个独立数组的形式返回
isnan 返回一个表示“哪些是NAN”的布尔型数组
isfinite、isinf 返回一个表示“哪些是finite、inf”的布尔型数组
cos、cosh、sin、sinh、tan、tanh 普通型和双曲线三角函数
arccos、arccosh、arcsin、arcsinh、arctan、arctanh 反三角函数
logical_not 计算各元素not x的真值,相当于-arr
函数 说明
add 将数组中对应的元素相加
subtract 从第一个数组中的元素减去第二个数组中的元素
multiply 数组元素相乘
divide、floor_dixide 除法、向下圆整除法(丢弃余数)
power 对第一个数组中元素A,根据第二个数组中的相应位置元素B,计算A^B
maximum、fmax 元素级的最大值计算,fmax将忽略NaN
minimum、fmin 元素级的最小值计算,fmin将忽略NaN
mod 元素级的求模计算,(除法的余数)
greater、greater_equal、less、less_equal、equal、not_equal 执行元素级的比较运算,最终产生布尔型数组。相当于中缀运算符>、>=、<、<=、==、!=
logical_and、logical_or、logical_xor 执行元素级的真值逻辑

numpy的通用函数:快速的元素级数组函数的更多相关文章

  1. numpy中的快速的元素级数组函数

    numpy中的快速的元素级数组函数 一元(unary)ufunc 对于数组中的每一个元素,都将元素代入函数,将得到的结果放回到原来的位置 >>> import numpy as np ...

  2. 【学习】通用函数:快速的元素级数组函数【Numpy】

    通用函数(即ufunc)是一种对ndarray中的数据执行元素级运算的函数.可以将其看做简单函数(接受一个或多个标量值,并产生一个或多个标量值)的矢量化包装器. sqrt 和 exp为一元(unary ...

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

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

  4. numpy元素级数组函数

    一元函数 abs, fabs 计算整数.浮点数或复数的绝对值.对于非复数值,可以使用更快的fabs. sqrt 计算各元素的平方根.相当于arr ** 0.5 sqare 计算各元素的平方.相当于ar ...

  5. numpy的通用函数

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

  6. numpy之通用函数ufunc

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

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

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

  8. 关于理解《C++ 对象模型》中:把单一元素的数组放在末尾,struct可以拥有可变大小的数组

    这一章在第19页,写的好深奥,我竟然没看明白在说什么--之后再看了几遍,终于明白了. 原文: C程序员的巧计有时候却成为c++程序员的陷阱.例如把单一元素的数组放在一个struct的末尾,于是每个st ...

  9. php快速定位多维数组的深度

    原文地址:php快速定位多维数组的深度作者:陌上花开 自定义一个函数: function array_depth($array)  { $max_depth = 1; foreach ($array ...

随机推荐

  1. Windows 8 64bit Xilinx ISE(14.7) Fix License

    http://www.youtube.com/watch?v=ttPbEcNjdo8 It can work successfully!

  2. iOS_16_控制器切换_modal_storyboard拖线的方式

    终于效果图: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcHJlX2VtaW5lbnQ=/font/5a6L5L2T/fontsize/400/fill ...

  3. nginx源码学习_源码结构

    nginx的优秀除了体现在程序结构以及代码风格上,nginx的源码组织也同样简洁明了,目录结构层次结构清晰,值得我们去学习.nginx的源码目录与nginx的模块化以及功能的划分是紧密结合,这也使得我 ...

  4. 敏捷开发 scrum管理

    项目准备阶段 1.产品经理将整体项目拆分成不同的单独模块,每个模块尽量细化到能够自成一体.例如app的登录注册模块,不能仅仅就是登录注册这两个界面,而是要将所有与这有关的需求整合到一块.要达到的效果就 ...

  5. Gmail 邮件配置备忘

    1.smtp端口号不是默认的25,smtp的是587 2.必须设置“允许使用不够安全的应用” 其他的按照网上文档设置就好了

  6. Python 对Twitter tweet的元素 (Word, Screen Name, Hash Tag)的频率分析

    CODE: #!/usr/bin/python # -*- coding: utf-8 -*- ''' Created on 2014-7-2 @author: guaguastd @name: tw ...

  7. java中通过配置文件的方式(Jedis驱动)使用Redis

    在java中使用Redis,实际上是将Redis的一些命令封装到Jedis的实体类中,然后进行调用.

  8. POJ3090

    Visible Lattice Points Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 7094   Accepted: ...

  9. SharePoint解决方案及开发系列(2)-ECM

    很多次跟客户做咨询及沟通的时候,客户都问SharePoint能做什么?是不是就是做文档管理?为什么要花那么多的钱没SharePoint?高大上? 我上家公司面试的时候,我的那个BOSS面试官有一个问题 ...

  10. shell脚本中格式化日期

    date [-u] [-d datestr] [-s datestr] [--utc] [--universal] [--date=datestr] [--set=datestr] [--help] ...