numpy的通用函数

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

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

 

一元func:

abs丶fabs  计算整数丶浮点数或复数的绝对值。对于非复数值,可以使用更快的fabs。

In [19]: np.abs(12.0)
Out[19]: 12.0

In [20]: np.abs(12)
Out[20]: 12

In [21]: np.abs(12+5j)  #其中12+5j就是复数,其中12为实数部分,5为虚数部分
Out[21]: 13.0

In [22]: np.abs(12-5j)
Out[22]: 13.0

sqrt:计算各元素的平方根。

In [36]: np.sqrt(4)
Out[36]: 2.0

In [37]: np.sqrt(5)
Out[37]: 2.23606797749979

 

square:计算各元素的平方。

In [38]: np.square(4)
Out[38]: 16

In [39]: np.square(2.6)
Out[39]: 6.760000000000001             

 

exp:计算各元素的指数(e^x)

In [40]: np.exp(2)
Out[40]: 7.38905609893065

#python3还有个函数为exp2,计算的是2的指数
In [41]: np.exp2(5)
Out[41]: 32.0

 

log丶log10丶log2丶log1p  分别为自然对数(底数为e)丶底数为10的log丶底数为2的log丶log(1+x)

In [42]: np.log(2)
Out[42]: 0.6931471805599453

In [43]: np.log10(0.1)
Out[43]: -1.0

 

sign:计算各元素的正负号:1(正数)丶0(零)丶-1(负数)

In [44]: np.sign(12)
Out[44]: 1

In [45]: np.sign(-12)
Out[45]: -1

In [46]: np.sign(0)
Out[46]: 0

 

ceil:计算各元素的ceiling值,即大于等于该值的最小整数

In [47]: np.ceil(15.971)
Out[47]: 16.0

 

floor:计算各元素的floor值,即小于等于该值的最大整数

In [48]: np.floor(-1.564)
Out[48]: -2.0

In [49]: np.floor(1.564)
Out[49]: 1.0

 

rint:将各元素四舍五入到最接近的整数,保留dtype

In [50]: np.rint(1.485)
Out[50]: 1.0

 

modf:将数组的小数和整数部分以两个独立数组的形式返回

In [52]: np.modf([1.5,2.9])
Out[52]: (array([0.5, 0.9]), array([1., 2.]))

 

isnan:返回一个表示“哪些值是NaN(这不是一个数字)”的布尔型数组

In [56]: np.isnan(NaN)
Out[56]: True

In [57]: np.isnan(12)
Out[57]: False

 

isfinite丶isinf:分别返回一个表示“哪些元素是有穷的(非inf,非NaN)”或“哪些元素是无穷的”的布尔型数组

In [61]: np.isfinite(1/3)
Out[61]: True

In [62]: np.isinf(1/3)
Out[62]: False

In [63]: np.isinf(1/2)
Out[63]: False

In [64]: np.isfinite(1/2)
Out[64]: True

 

cos丶cosh丶sin丶sinh:普通型和双曲型三角函数

In [65]: np.sin(30)
Out[65]: -0.9880316240928618

In [66]: np.sin(1/2)
Out[66]: 0.479425538604203

In [67]: np.sin(1/6)
Out[67]: 0.16589613269341502

In [68]: np.cos(1/3)
Out[68]: 0.9449569463147377

 

tan丶tanh丶arccos丶arccosh丶arcsin丶arcsinh丶arctan丶arctanh:反三角函数

logical_not:计算各元素not x的真值。相当于-arr

In [71]: np.logical_not(15)
Out[71]: False

In [72]: np.logical_not(-15)
Out[72]: False

In [73]: np.logical_not(-1)
Out[73]: False

In [74]: np.logical_not(0)
Out[74]: True

 

 

 #以上传入的参数都可以是数组,只不过为了测试方便才传入一个值

二元func

add:将数组中对应的元素相加

subtract:从第一个数组中减去第二个数组中的元素

multiply:数组元素相乘

divide丶floor_divide:除法或向下圆整除法(丢弃余数)

power:对第一个数组中的元素A,根据第二个数组中的相应元素B,计算A^B

maximum丶fmax:元素级的最大值计算。fmax将忽略NAN

minimum丶fmin:元素级的最小值计算。fmax将忽略NAN

mod:元素级的求模计算(除法的余数)

copysign:将第二个数组中的值的符号复制给第一个数组中的值。

greater丶greater_equal丶less丶less_equal丶equal丶not_equal:执行元素级的比较运算,最终产生布尔型数组。相当于运算符>丶>=丶<丶<=丶==丶!=

logical_and丶logical_or丶logical_xor:执行元素级的真值逻辑运算。相当于运算符&丶|丶^(与或异)

posted @ 2018-10-15 22:07  Arish  阅读(2346)  评论(0编辑  收藏  举报