第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

Numpy 一元函數(shù)

通用函數(shù)(即 ufunc)是一種對 ndarray 中的數(shù)據(jù)執(zhí)行元素級運(yùn)算的函數(shù)。你可以將其看作簡單函數(shù)的矢量化封裝結(jié)果。本小節(jié)主要講述僅接受一個標(biāo)量值、并產(chǎn)生一個或多個標(biāo)量值的情況,這里稱之為一元函數(shù)。

Numpy 中包含了大量的這類數(shù)學(xué)運(yùn)算,包括三角函數(shù)、舍入取整函數(shù)、運(yùn)算函數(shù)等。

1. 三角函數(shù)

1.1 三角函數(shù)

Numpy 提供了標(biāo)準(zhǔn)的三角函數(shù):sin()、cos()、tan(),通過接受弧度值,返回對應(yīng)的結(jié)果:

案例

arr0 = np.array([1/6, 2/6, 3/6, 4/6, 5/6])*np.pi
arr0
out:
    array([0.52359878, 1.04719755, 1.57079633, 2.0943951 , 2.61799388])

查看arr0中角度的正弦值:

arr0_sin = np.sin(arr0)
arr0_sin
out:
    array([0.5      , 0.8660254, 1.       , 0.8660254, 0.5      ])

查看arr0中角度的余弦值:

arr0_cos = np.cos(arr0)
arr0_cos
out:
    array([ 8.66025404e-01,  5.00000000e-01,  6.12323400e-17, -5.00000000e-01,
       -8.66025404e-01])

查看arr0中角度的正切值:

arr0_tan = np.tan(arr0)
arr0_tan
out:
    array([ 5.77350269e-01,  1.73205081e+00,  1.63312394e+16, -1.73205081e+00,
       -5.77350269e-01])

Numpy 常用的三角函數(shù)包括:

函數(shù) 說明
sin、cos、tan 普通的正弦、余弦、正切函數(shù)
sinh、cosh、tanh 雙曲正弦、雙曲余弦、雙曲正切

1.2 反三角函數(shù)

Numpy 提供了相對應(yīng)的反三角函數(shù):

案例

將上個案例中生成的arr0_sin、arr0_cos和arr0_tan進(jìn)行反轉(zhuǎn)求角度。

利用反正弦函數(shù),還原arr0_sin的角度:

np.arcsin(arr0_sin)
out:
    array([0.52359878, 1.04719755, 1.57079633, 1.04719755, 0.52359878])

利用反余弦函數(shù),還原 arr0_cos 的角度:

np.arccos(arr0_cos)
out:
    array([0.52359878, 1.04719755, 1.57079633, 2.0943951 , 2.61799388])

利用反正切函數(shù),還原arr0_tan的角度:

np.arctan(arr0_tan)
out:
    array([ 0.52359878,  1.04719755,  1.57079633, -1.04719755, -0.52359878])

Numpy 常用的三角函數(shù)包括:

函數(shù) 說明
arcsin、arccos、arctan 反正弦、反余弦、反正切函數(shù)
arcsinh、arccosh、arctanh 反雙曲正弦、反雙曲余弦、反雙曲正切

2. 數(shù)值修約函數(shù)

數(shù)值修約,又稱數(shù)字修約,是指在進(jìn)行具體的數(shù)字運(yùn)算前,按照一定的規(guī)則確定一致的位數(shù),然后舍去某些數(shù)字后面多余的尾數(shù)的過程。比如, 我們常提到的四舍五入,就屬于數(shù)值修約中的一種。

常用的數(shù)值修約函數(shù)如下:

函數(shù) 說明
around 返回指定數(shù)字的四舍五入值。
floor 返回小于或者等于指定表達(dá)式的最大整數(shù),即向下取整。
ceil 返回大于或者等于指定表達(dá)式的最小整數(shù),即向上取整。
rint 將各元素四舍五入到最接近的整數(shù)。

2.1 四舍五入around函數(shù)

around的原型如下:

numpy.around(a,decimals)

函數(shù)接受的參數(shù)詳解如下:

參數(shù) 說明
a 輸入數(shù)組
decimals 舍入的小數(shù)位數(shù)。 默認(rèn)值為0。 如果為負(fù),整數(shù)將四舍五入到小數(shù)點(diǎn)左側(cè)的位置

案例

隨機(jī)創(chuàng)建數(shù)組方針:

arr1 = np.random.normal(loc=0, scale=10, size=(3,3))

查看生成的數(shù)組:

arr1
out:
    array([[  1.34267058,   9.75751399,  -3.90599534],
       [ -1.55227132,  16.08729251,   9.02619899],
       [-18.69375818, -12.57922124,   1.88648572]])

對arr1進(jìn)行四舍五入取整:

np.around(arr1)
out:
    array([[  1.,  10.,  -4.],
       [ -2.,  16.,   9.],
       [-19., -13.,   2.]])

把a(bǔ)rr1四舍五入到2位小數(shù):

np.around(arr1, 2)
out:
    array([[  1.34,   9.76,  -3.91],
       [ -1.55,  16.09,   9.03],
       [-18.69, -12.58,   1.89]])

把a(bǔ)rr1四舍五入到小數(shù)點(diǎn)左側(cè)一位:

np.around(arr1, -1)
out:
    array([[  0.,  10.,  -0.],
       [ -0.,  20.,  10.],
       [-20., -10.,   0.]])

2.2 其他取整函數(shù)

常用的取整方法有:向上取整(ceil)、向下取整(floor)和四舍五入(rint)。這里以向下取整為例,進(jìn)行說明,其他函數(shù)的用法基本類似。

案例

對 arr1 進(jìn)行向下取整:

np.floor(arr1)
out:
    array([[  1.,   9.,  -4.],
       [ -2.,  16.,   9.],
       [-19., -13.,   1.]])

3. 算數(shù)運(yùn)算

3.1 算數(shù)運(yùn)算

常用的一元算數(shù)運(yùn)算函數(shù)有:

函數(shù) 說明
abs 計算整數(shù)、浮點(diǎn)數(shù)的絕對值
sqrt 計算各元素的平方根
square 計算各元素的平方
exp 計算各元素的指數(shù)ex
log、log10、log2、log1p 分別位自然對數(shù)(底數(shù)為e)、底數(shù)為10 的log、底數(shù)為2的log、log(1+x)

案例

這里以計算arr1的絕對值為例,進(jìn)行演示:

np.abs(arr1)
out:
    array([[ 1.34267058,  9.75751399,  3.90599534],
       [ 1.55227132, 16.08729251,  9.02619899],
       [18.69375818, 12.57922124,  1.88648572]])

4. 判斷空值

4.1 isnan

函數(shù)說明:該函數(shù)返回一個表示哪些值是NaN的布爾型數(shù)組。

案例

創(chuàng)建一個包含空值的數(shù)組:

arr2 = np.array([1,2,np.nan, 4])
arr2
out:
    array([ 1.,  2., nan,  4.])

判斷數(shù)組中的空值:

np.isnan(arr2)
out:
    array([False, False,  True, False])

5. 小結(jié)

本節(jié)重點(diǎn)介紹了 Numpy 中常見的一元函數(shù),包括:三角與反三角函數(shù)、數(shù)值修約函數(shù)、一元算術(shù)運(yùn)算、空值判斷方法。