通用函式也可以稱為 ufunc, 是一種在 ndarray 資料中進行逐元素操作的函式。某些簡單函式接受了乙個或者多個標量數值,並產生乙個或多個標量結果,而通用函式就是對這些簡單函式的向量化封裝。
有很多 ufunc 是簡單的逐元素轉換,比如 sqrt 和 exp 函式:
import numpy as np
arr = np.arange(10)
print(arr)
print('-----------')
print(np.sqrt(arr))
print('-----------')
print(np.exp(arr)) #計算每個元素的自然指數值e的x次。
[0 1 2 3 4 5 6 7 8 9]
-----------
[0. 1. 1.41421356 1.73205081 2. 2.23606798
2.44948974 2.64575131 2.82842712 3. ]
-----------
[1.00000000e+00 2.71828183e+00 7.38905610e+00 2.00855369e+01
5.45981500e+01 1.48413159e+02 4.03428793e+02 1.09663316e+03
2.98095799e+03 8.10308393e+03]
這些就是所謂的一元通用函式。
介紹一下二元通用函式:比如 add 和 maximum 則會接受兩個陣列並返回乙個陣列結尾結果,所以叫做二元通用函式。
x = np.random.randn(8)
y = np.random.randn(8)
print(x)
print('--------')
print(y)
print('--------')
print(np.maximum(x ,y)) #對位比較大小,取大的,生成新的陣列返回
[-0.51129588 0.78359254 -0.46670919 0.11893378 1.92495672 2.80372238
0.21499435 1.54663201]
--------
[ 1.09194406 0.42875348 0.26144712 0.45502432 1.94673371 0.03297522
-0.05771754 -0.70162544]
--------
[1.09194406 0.78359254 0.26144712 0.45502432 1.94673371 2.80372238
0.21499435 1.54663201]
多的栗子就不舉了。
NumPy學習(2 快速地逐元素陣列函式)
import numpy as np 通用函式,也可以稱為ufunc,是一種在ndarray資料中進行逐元素操作的函式。某些簡單函式接收乙個或多個標量數值,並產生乙個或多個標量結果,而通用函式就是對這些簡單函式的向量化封裝 arr np.arange 10 print np.sqrt arr 求根號...
通用函式 快速的元素級陣列函式
通用函式 及ufunc 是一種對ndarray中的資料執行元素級運算的函式。你可以將其看作簡單函式 接受乙個或多個標量值,並產生乙個或多個標量值 的向量化包裝器。abs,fabs sqrt square explog,log10,log2,log1p sign ceil floor rint mod...
Python通用函式實現陣列計算
一.陣列的運算 陣列的運算可以進行加減乘除,同時也可以將這些算數運算子進行任意的組合已達到效果。x np.arange 5 x array 0,1,2,3,4 x 5 x np.arange 5 x 5 array 5,6,7,8,9 x 5 array 5,4,3,2,1 x 2 array 0,...