通用函數(shù)的目的是提高運行速度,尤其是在進行大量循環(huán)的時候,通用函數(shù)的本質(zhì)是將數(shù)據(jù)進行了向量化,而原生的python將數(shù)據(jù)進行解析,判斷其類型,然后選擇方法進行調(diào)用,所以耗時較長。
用 %timeit 可以得出一個函數(shù)的運行時間。
numpty的通用函數(shù)也同樣支持原生python的 +,-,,/,//(向下取整),%(求余數(shù)),*(指數(shù)運算)運算符。
numpy中也為這些運算符提供了對應(yīng)的函數(shù):
+,np.add(),例如:np.add(x,2)
-,np.subtract ()
常用的其他運算符對應(yīng)函數(shù)如圖:

np.absolute(),求絕對值,也可用np.abs()代替。
numpy中的三角函數(shù)和逆三角函數(shù)
sin(), arcsin()
cos(), arccos()
tan(), arctan()
指數(shù)運算剛才有提到**,其對應(yīng)的函數(shù)是
x = [1, 2, 3]
print("x =", x)
print("e^x =", np.exp(x)) # e的x次方用exp()
print("2^x =", np.exp2(x)) # exp2()代表2的x次方
print("3^x =", np.power(3, x)) # 大于2的則用power
指數(shù)運算的逆運算,即對數(shù)運算也是可用的。最基本的 np.log 給出的是以自然數(shù)為底數(shù)的
對數(shù)。如果你希望計算以 2 為底數(shù)或者以 10 為底數(shù)的對數(shù),可以按照如下示例處理:
In[19]: x = [1, 2, 4, 10]
print("x =", x)
print("ln(x) =", np.log(x))
print("log2(x) =", np.log2(x))
print("log10(x) =", np.log10(x))
另外一些高級的數(shù)學運算函數(shù)在scipy.special中
from scipy import special