通用函数:快速的逐元素数组函数

通用函数也可以称为 ufunc, 是一种在 ndarray 数据中进行逐元素操作的函数。某些简单函数接受了一个或者多个标量数值,并产生一个或多个标量结果,而通用函数就是对这些简单函数的向量化封装。

有很多 ufunc 是简单的逐元素转换,比如 sqrt 和 exp 函数:

import  numpy as np
arr = np.arange(10)
print(arr)
print('-----------')
print(np.sqrt(arr))
print('-----------')
print(np.exp(arr)) #计算每个元素的自然指数值e的x次。
[0 1 2 3 4 5 6 7 8 9]
-----------
[0.         1.         1.41421356 1.73205081 2.         2.23606798
 2.44948974 2.64575131 2.82842712 3.        ]
-----------
[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]

这些就是所谓的一元通用函数。

介绍一下二元通用函数:比如 add 和 maximum 则会接受两个数组并返回一个数组结尾结果,所以叫做二元通用函数。

x = np.random.randn(8)
y = np.random.randn(8)

print(x)
print('--------')
print(y)
print('--------')
print(np.maximum(x ,y)) #对位比较大小,取大的,生成新的数组返回
[-0.51129588  0.78359254 -0.46670919  0.11893378  1.92495672  2.80372238
  0.21499435  1.54663201]
--------
[ 1.09194406  0.42875348  0.26144712  0.45502432  1.94673371  0.03297522
 -0.05771754 -0.70162544]
--------
[1.09194406 0.78359254 0.26144712 0.45502432 1.94673371 2.80372238
 0.21499435 1.54663201]

多的栗子就不举了。

img

img

img

posted @ 2019-10-29 23:41  chanyuli  阅读(279)  评论(0编辑  收藏  举报