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

匿名 (未验证) 提交于 2019-12-03 00:15:02

通用函数也可以称为 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]

多的栗子就不举了。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!