通用函式 快速的逐元素陣列函式

2022-03-11 07:16:10 字數 1560 閱讀 7447

通用函式也可以稱為 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,...