Numpy 简单算法
Numpy 简单算法
+ - * /,但本节讨论了它的一个扩展,其中的函数可以接受任何类似数组的对象,例如列表、元组等,并 有条件 地执行算术。算术条件:意味着我们可以定义算术运算应该发生的条件。
所有讨论的算术函数都采用 where 参数,我们可以在其中指定该条件。
加
add() 函数对两个数组的内容求和,并在新数组中返回结果。
实例
将 arr1 中的值加上 arr2 对应的值:
import numpy as nparr1 = np.array([10, 11, 12, 13, 14, 15])arr2 = np.array([20, 21, 22, 23, 24, 25])newarr = np.add(arr1, arr2)print(newarr)
上面的示例将返回 [30 32 34 36 38 40],这是 10+20、11+21、12+22 等的总和。
减
subtract() 函数将一个数组中的值与另一个数组中的值相减,并在新数组中返回结果。
实例
从 arr1 中的值中减去 arr2 中的值:
import numpy as nparr1 = np.array([10, 20, 30, 40, 50, 60])arr2 = np.array([20, 21, 22, 23, 24, 25])newarr = np.subtract(arr1, arr2)print(newarr)
上面的示例将返回 [-10-18 17 26 35],这是 10-20、20-21、30-22 等的结果。
乘
multiply() 函数将一个数组中的值与另一个数组中的值相乘,并在新数组中返回结果。
实例
将 arr1 中的值与 arr2 中的值相乘:
import numpy as nparr1 = np.array([10, 20, 30, 40, 50, 60])arr2 = np.array([20, 21, 22, 23, 24, 25])newarr = np.multiply(arr1, arr2)print(newarr)
上面的示例将返回 [200 420 660 920 1200 1500],这是 10*20、20*21、30*22 等的结果。
除
divide() 函数将一个数组中的值与另一个数组中的值相除,并在新数组中返回结果。
实例
将 arr1 中的值除以 arr2 中的值:
import numpy as nparr1 = np.array([10, 20, 30, 40, 50, 60])arr2 = np.array([3, 5, 10, 8, 2, 33])newarr = np.divide(arr1, arr2)print(newarr)
上面的示例将返回 [3.33333333 4.3.5.25.1.81818182],这是 10/3、20/5、30/10 等的结果。
幂
power() 函数将第一个数组的值做第二个数组的次方,并在新数组中返回结果。
实例
将 arr1 中的值做 arr2 中的值的次方:
import numpy as nparr1 = np.array([10, 20, 30, 40, 50, 60])arr2 = np.array([3, 5, 6, 8, 2, 33])newarr = np.power(arr1, arr2)print(newarr)
上面的示例将返回 [1000 32000000 729000000 6553600000000 25000],这是 10*10*10、20*20*20*20、30*30*30*30*30*30 等的结果。
余
mod() 和 remainder() 函数都返回第一个数组中与第二个数组中的值相对应的余数,并在新数组中返回结果。
实例
返回余数:
import numpy as nparr1 = np.array([10, 20, 30, 40, 50, 60])arr2 = np.array([3, 7, 9, 8, 2, 33])newarr = np.mod(arr1, arr2)print(newarr)
上面的示例将返回 [1 6 3 0 0 27],当您用 10(10%3)除以 3 取余,用 20(20%7)除以 7 取余,用 30(30%9)除以 9 取余等等。
你用 remainder() 函数也能得到同样的结果:
实例
返回余数:
import numpy as nparr1 = np.array([10, 20, 30, 40, 50, 60])arr2 = np.array([3, 7, 9, 8, 2, 33])newarr = np.remainder(arr1, arr2)print(newarr)
商与模
divmod() 函数返回商和模。返回值是两个数组,第一个数组包含商,第二个数组包含模。
实例
返回商与模:
import numpy as nparr1 = np.array([10, 20, 30, 40, 50, 60])arr2 = np.array([3, 7, 9, 8, 2, 33])newarr = np.divmod(arr1, arr2)print(newarr)
上面的示例将返回:(array([3, 2, 3, 5, 25, 1]), array([1, 6, 3, 0, 0, 27]))
第一个数组表示商(10 除以 3、20 除以 7、30 除以 9 时的整数值,等等)。
第二个数组表示相同除法后的余数。
绝对值
absolute() 和 abs() 函数在元素方面执行相同的绝对运算,但我们应该使用 absolute() 避免与 python 的内置方法 math.abs() 混淆
实例
返回商与模:
import numpy as nparr = np.array([-1, -2, 1, 2, 3, -4])newarr = np.absolute(arr)print(newarr)
以上例子返回结果: [1 2 1 2 3 4] 。