NumPy 基础(三) - 数学函数


常用函数

函数 描述 用法
abs
fabs
计算 整型/浮点/复数 的绝对值
对于没有复数的快速版本求绝对值
np.abs()
np.fabs()
sqrt 计算元素的平方根。等价于array ** 0.5 np.sqrt()
square 计算元素的平方。等价于 array **2 np.squart()
exp 计算以自然常数e为底的幂次方 np.exp()
log
log10
log2
log1p
自然对数(e)
基于10的对数
基于2的对数
基于log(1+x)的对数
np.log()
np.log10()
np.log2()
np.log1p()
sign 计算元素的符号:1:正数 0:0 -1:负数 np.sign()
ceil 计算大于或等于元素的最小整数 np.ceil()
floor 计算小于或等于元素的最大整数 np.floor()
rint 对浮点数取整到最近的整数,但不改变浮点数类型 np.rint()
modf 分别返回浮点数的整数和小数部分的数组 np.modf()
isnan 返回布尔数组标识哪些元素是 NaN (不是一个数) np.isnan()
isfinite
isinf
返回布尔数组标识哪些元素是有限的(non-inf, non-NaN)或无限的 np.isfiniter()
np.isinf()
cos, cosh, sin sinh, tan, tanh 三角函数
arccos, arccosh, arcsin, arcsinh, arctan, arctanh 反三角函数
power 使用第二个数组作为指数提升第一个数组中的元素 np.power(A,B)
add 数组对应元素相加 np.add(A,B)
substract 数组对应元素相减 np.substract(A,B)
dot
multiply
*
数组和矩阵对应位置相乘,输出与相乘数组/矩阵的大小一致
矩阵对应位置相乘
对数组执行对应位置相乘,对矩阵执行矩阵乘法运算
详见:https://blog.csdn.net/zenghaitao0128/article/details/78715140
divide=/
true_divide
floor_divide=//
数组对应元素相除
地板除
详见:http://www.mamicode.com/info-detail-1794242.html
mod
remainder
fmod
模运算 同上详见
maximum 两数组对应元素比大小取其大者,返回一个数组 np.maximum(A,B)
minimun 两数组对应元素比大小取其小者,返回一个数组 np.minimum(A,B)

示例:

  • 导入模块
>>> import numpy as np
>>> a = np.array([10, 20, 30, 40, 50])
>>> b = np.array([1, 2, 3, 4, 5])
  • 三角函数
>>> np.sin(a)
array([-0.54402111,  0.91294525, -0.98803162,  0.74511316, -0.26237485])
>>> np.tan(a)
array([ 0.64836083,  2.23716094, -6.4053312 , -1.11721493, -0.27190061])
>>> np.cos(a)
array([-0.83907153,  0.40808206,  0.15425145, -0.66693806,  0.96496603])
  • 对数函数
>>> np.log(a)
array([2.30258509, 2.99573227, 3.40119738, 3.68887945, 3.91202301])
>>> np.log10(a)
array([1.        , 1.30103   , 1.47712125, 1.60205999, 1.69897   ])
  • 数组的方根的运算(开平方)
>>> np.sqrt(a)
array([3.16227766, 4.47213595, 5.47722558, 6.32455532, 7.07106781])
>>> a ** 0.5 # 等价于np.sqrt(a)
array([3.16227766, 4.47213595, 5.47722558, 6.32455532, 7.07106781])
  • 数组的方根的运算(立方)
>>> np.power(a, 3)
array([  1000,   8000,  27000,  64000, 125000])
>>> a ** 3 # 等价于np.power(a, 3)
array([  1000,   8000,  27000,  64000, 125000])

 评论