本教程適合於numpy基礎入門,更多詳盡內容請閱讀官網http://www.numpy.org/,此篇爲numpy基礎學習教程系列之算術運算篇,傾向於實踐用法,後續還會推出一系列numpy其它方面的教程,歡迎廣大圈友一起交流學習,並指出其中的錯誤。
注意:以下np爲import numpy as np中的np標識符
divide函數:在整數和浮點數除法中均只保留整數部分。
a = np.array([2,6,5])
b = np.array([1,2,3])
print np.divide(a,b)
print np.divide(b,a)
結果:[2 3 1]
[0 0 0]
true_divide函數:返回浮點數的除法
a = np.array([2,6,5])
b = np.array([1,2,3])
print np.true_divide(a,b)
print np.true_divide(b,a)
結果:[ 2. 3. 1.66666667]
[ 0.5 0.33333333 0.6 ]
floor_divide函數:返回整數結果。相當於先調用divide函數,再調用floor函數,floor函數將對浮點數進行向下取整並返回整數。
a = np.array([2,6,5])
b = np.array([1,2,3])
c = 3.15*b
print np.floor_divide(a,b)
print np.floor_divide(b,a)
print np.floor_divide(b,c)
print np.floor_divide(c,b)
結果:[2 3 1]
[0 0 0]
[0. 0. 0.]
[3. 3. 3.]
注意:默認情況下,使用/運算符相當於調用divide函數;運算符//相當於floor_divide函數
remainder函數:返回兩個數組中元素相除後的餘數,如果第二個數字爲0,這直接返回0
a = np.arange(-4,4)
print np.remainder(a,2)
結果:[0 1 0 1 0 1 0 1]
注意:mod函數與remainder函數功能相似;%操作符僅僅是remainder函數的簡寫。
fmod函數:處理負數的方式與remainder、mod和%不同,所得餘數的正負由被除數決定,與除數的正負無關。
a = np.arange(-4,4)
print np.fmod(a,2)
結果:[ 0 -1 0 -1 0 1 0 1]
np.rint(array):對數組array元素取整,不改變浮點數的類型。
&, |, ^表示二進制的AND,OR, XOR運算。
^對應bitwise_xor函數
<操作符對應於less函數
&對應於bitwise_and函數
==對應於equal函數
<<對應於left_shift函數