NumPy - 算术通用函数 (ufunc)
算术通用函数 (ufunc)
NumPy 中的算术通用函数 (ufunc) 是一种特殊类型的函数,旨在对数组执行基本算术运算(例如加、减、乘、除)。
这些函数针对性能进行了优化,使其执行这些运算的速度比常规 Python 循环快得多。
例如,当您使用 numpy.add() 函数将两个数组相加时,它会将加法运算应用于数组中每个对应的元素对。
NumPy 算术加法
numpy.add() 函数用于对两个数组执行元素相加。它将输入数组的相应元素相加,并返回一个包含结果的新数组。
示例
在下面的示例中,我们使用 numpy.add() 函数将两个数组按元素相加 -
import numpy as np # 定义两个数组 a = np.array([1, 2, 3]) b = np.array([4, 5, 6]) # 执行按元素相加 result = np.add(a, b) print(result)
以下是得到的输出 -
[5 7 9]
NumPy 算术减法
numpy.subtract() 函数用于对两个数组执行逐元素减法。它将第二个数组的元素从第一个数组的相应元素中减去,并返回一个包含结果的新数组。
示例
在下面的示例中,我们使用 numpy.subtract() 函数逐个元素地将一个数组从另一个数组中减去 -
import numpy as np # 定义两个数组 a = np.array([10, 20, 30]) b = np.array([1, 2, 3]) # 执行逐个元素的减法 result = np.subtract(a, b) print(result)
这将产生以下结果 -
[ 9 18 27]
NumPy算术乘法
numpy.multiply() 函数用于对两个数组进行元素乘法。它将输入数组中对应的元素相乘,并返回一个包含结果的新数组。
示例
在下面的示例中,我们使用 numpy.multiply() 函数对两个数组进行元素乘法 -
import numpy as np # 定义两个数组 a = np.array([2, 3, 4]) b = np.array([5, 6, 7]) # 执行元素乘法 result = np.multiply(a, b) print(result)
以下是上述代码的输出 -
[10 18 28]
NumPy 算术除法
numpy.divide() 函数用于对两个数组执行元素除法。它将第一个数组的元素除以第二个数组的相应元素,并返回一个包含结果的新数组。
示例
在下面的示例中,我们使用 numpy.divide() 函数将一个数组逐个元素地除以另一个数组 -
import numpy as np # 定义两个数组 a = np.array([10, 20, 30]) b = np.array([2, 4, 5]) # 执行逐个元素除法 result = np.divide(a, b) print(result)
获得的输出如下所示 -
[5. 5. 6.]
其他算术 ufunc
除了基本的算术运算之外,NumPy 还提供了其他有用的 ufunc,用于更复杂的数学运算,例如幂、模和三角函数。
这些 ufunc 遵循相同的逐元素运算模式,并提供了对数组执行各种计算的有效方法。
numpy.power() 函数
numpy.power() 函数用于将一个数组的元素乘以另一个数组中相应元素的幂。
示例
在下面的示例中,我们使用 numpy.power() 函数将一个数组逐元素地乘以另一个数组的幂 -
import numpy as np # 定义两个数组 a = np.array([2, 3, 4]) b = np.array([3, 2, 1]) # 执行逐元素幂运算 result = np.power(a, b) print(result)
执行上述代码后,我们得到以下输出 -
[8 9 4]
numpy.mod() 函数
numpy.mod() 函数用于执行逐元素模运算,返回第一个数组元素除以第二个数组对应元素后的余数。
示例
在下面的示例中,我们使用 numpy.mod() 函数逐元素计算两个数组的模值 -
import numpy as np # 定义两个数组 a = np.array([10, 20, 30]) b = np.array([3, 4, 5]) # 执行逐元素模值运算 result = np.mod(a, b) print(result)
结果如下 -
[1 0 0]