numpy中函數的說明文檔?本文向大家介紹一下 numpy 常見的數學函數,我來為大家講解一下關于numpy中函數的說明文檔?跟着小編一起來看一看吧!
本文向大家介紹一下 numpy 常見的數學函數。
NumPy 三角函數三角函數是基本初等函數之一,是以角度(數學上最常用弧度制,下同)為自變量,角度對應任意角終邊與單位圓交點坐标或其比值為因變量的函數。三角函數一般用于計算三角形中未知長度的邊和未知的角度,在導航、工程學以及物理學方面都有廣泛的用途。
常見的三角函數包括正弦函數、餘弦函數和正切函數。下面我們來學習這三個常見的三角函數:
函數 |
描述 |
sin() |
數組中角度的正弦值 |
cos() |
數組中角度的餘弦值 |
tan() |
數組中角度的正切值 |
arcsin() |
數組中角度的反正弦值 |
arccos() |
數組中角度的反餘弦值 |
arctan() |
數組中角度的反正切值 |
degrees() |
将弧度轉換成角度 |
我們直接來看實例:
import numpy as np
a = np.array([0, 30, 45, 60, 90])
print(np.char.center('不同角度的正弦值', 30, '*'))
# 通過乘 pi/180 轉化為弧度
sin = np.sin(a*np.pi/180)
print(sin)
print('\n')
print(np.char.center('不同角度的餘弦值', 30, '*'))
# 通過乘 pi/180 轉化為弧度
cos = np.cos(a*np.pi/180)
print(cos)
print('\n')
print(np.char.center('不同角度的正切值', 30, '*'))
# 通過乘 pi/180 轉化為弧度
tan = np.tan(a*np.pi/180)
print(tan)
print('\n')
print(np.char.center('不同角度的反正弦值', 30, '*'))
arcsin = np.arcsin(sin)
# 将弧度轉換成角度打印輸出
print(np.degrees(arcsin))
print('\n')
print(np.char.center('不同角度的反餘弦值', 30, '*'))
arccos = np.arccos(cos)
# 将弧度轉換成角度打印輸出
print(np.degrees(arccos))
print('\n')
print(np.char.center('不同角度的反正切值', 30, '*'))
arctan = np.arctan(tan)
# 将弧度轉換成角度打印輸出
print(np.degrees(arctan))
print('\n')
# 返回
***********不同角度的正弦值***********
[0. 0.5 0.70710678 0.8660254 1. ]
***********不同角度的餘弦值***********
[1.00000000e 00 8.66025404e-01 7.07106781e-01 5.00000000e-01
6.12323400e-17]
***********不同角度的正切值***********
[0.00000000e 00 5.77350269e-01 1.00000000e 00 1.73205081e 00
1.63312394e 16]
**********不同角度的反正弦值***********
[ 0. 30. 45. 60. 90.]
**********不同角度的反餘弦值***********
[ 0. 30. 45. 60. 90.]
**********不同角度的反正切值***********
[ 0. 30. 45. 60. 90.]
上面例子中,我們先計算不同角度的正弦值、餘弦值、正切值,然後我們通過反三角函數,将前面計算的值計算成弧度,然後通過 degrees 函數轉換成角度。我們可以看到最後的出來的角度和開始輸入的數組的角度是一樣的。
NumPy 四舍五入函數我們在數據的處理中可能會遇到需要将一組數字進行四舍五入操作,這時候我們就可以使用 NumPy 提供的四舍五入函數來處理了。
函數 |
描述 |
around() |
四舍五入 |
round() |
舍棄小數位 |
floor() |
向下取整 |
ceil() |
向上取整 |
對數組中的數字進行四舍五入
我們來看實例:
import numpy as np
a = np.array([1, 2.0, 30.12, 129.567])
# 四舍五入(取整)
print(np.around(a))
# 四舍五入(取一位小數)
print(np.around(a, decimals=1))
# 四舍五入(取小數點左側第一位)
print(np.around(a, decimals=-1))
# 返回
[ 1. 2. 30. 130.]
[ 1. 2. 30.1 129.6]
[ 0. 0. 30. 130.]
我們可以通過 decimals 參數來表示舍入的小數位數,默認值為0。 如果為負,整數将四舍五入到小數點左側的位置。
numpy.round()對數組中的數字進行若幹位的舍棄。
我們來看實例:
import numpy as np
a = np.array([1, 2.0, 30.12, 129.567])
# 隻舍不入(取整)
print(np.around(a))
# 隻舍不入(到小數點後一位)
print(np.around(a, decimals=1))
# 隻舍不入(取小數點左側第一位)
print(np.around(a, decimals=-1))
# 返回
[ 1. 2. 30. 130.]
[ 1. 2. 30.1 129.6]
[ 0. 0. 30. 130.]
這個函數與 around 函數的區别就是隻是舍棄,不做四舍五入。
numpy.floor()返回小于或者等于指定表達式的最大整數,即向下取整。
我們來看實例:
import numpy as np
a = np.array([1, 2.0, 30.12, 129.567])
# 向下取整
print(np.floor(a))
# 返回
[ 1. 2. 30. 129.]
這個函數很好理解,就是舍棄小數位。
numpy.ceil()返回大于或者等于指定表達式的最小整數,即向上取整。
我們來看實例:
import numpy as np
a = np.array([1, 2.0, 30.12, 129.567])
# 向上取整
print(np.ceil(a))
# 返回
[ 1. 2. 31. 130.]
這個函數和上面的 floor 是相反含義的函數,向上取整意思是如果沒有小數位或者小數位是0,取當前整數;如果有小數位并且小數位不是0,則取當前數字的整數加1。
NumPy 算術函數接下來我們來介紹一下 NumPy 的幾個常用的算術函數:
函數 |
描述 |
add() |
兩個數組元素相加 |
multiply() |
兩個數組元素相乘 |
divide() |
兩個數組元素相除 |
subtract() |
兩個數組元素相減 |
pow() |
将第一個輸入數組中的元素作為底數,計算它與第二個輸入數組中相應元素的幂 |
mod() |
計算輸入數組中相應元素的相除後的餘數 |
我們先來看看兩個數組元素的加減乘除的實例:
import numpy as np
a = np.arange(6, dtype=np.float_).reshape(2, 3)
print('第一個數組:')
print(a)
print('第二個數組:')
b = np.array([10, 10, 10])
print(b)
print('\n')
print(np.char.center('兩個數組相加', 20, '*'))
print(np.add(a, b))
print('\n')
print(np.char.center('兩個數組相減', 20, '*'))
print(np.subtract(a, b))
print('\n')
print(np.char.center('兩個數組相乘', 20, '*'))
print('兩個數組相乘:')
print(np.multiply(a, b))
print('\n')
print(np.char.center('兩個數組相除', 20, '*'))
print(np.divide(a, b))
print('\n')
# 返回
第一個數組:
[[0. 1. 2.]
[3. 4. 5.]]
第二個數組:
[10 10 10]
*******兩個數組相加*******
[[10. 11. 12.]
[13. 14. 15.]]
*******兩個數組相減*******
[[-10. -9. -8.]
[ -7. -6. -5.]]
*******兩個數組相乘*******
兩個數組相乘:
[[ 0. 10. 20.]
[30. 40. 50.]]
*******兩個數組相除*******
[[0. 0.1 0.2]
[0.3 0.4 0.5]]
在上面例子中,我們先定義了兩個數組,第一個數一個二維數組,第二個是一個一維數組,然後對兩個數組的元素進行加減乘除操作,返回的是一個二維數組。
這裡需要注意的是數組必須具有相同的形狀或符合數組廣播規則。
numpy.pow将第一個輸入數組中的元素作為底數,計算它與第二個輸入數組中相應元素的幂。
我們先來看看實例:
import numpy as np
c = np.array([10, 100, 1000])
print('第一個數組是:')
print(c)
print('\n')
print(np.char.center('調用 power 函數', 20, '*'))
print(np.power(c, 2))
print('\n')
d = np.array([1, 2, 3])
print('第二個數組是:')
print(d)
print('\n')
print(np.char.center('再次調用 power 函數', 20, '*'))
print(np.power(c, d))
# 返回
第一個數組是:
[ 10 100 1000]
****調用 power 函數*****
[ 100 10000 1000000]
第二個數組是:
[1 2 3]
***再次調用 power 函數****
[ 10 10000 1000000000]
從例子中我們可以看到,如果第二個參數是數字,就将第一個參數數組中的每個元素作為底數,計算它與第二個參數的幂;如果第二個參數是數組,那就将第一個參數數組中的每個元素作為底數,計算它與第二個數組中元素的幂。
numpy.mod()計算輸入數組中相應元素的相除後的餘數。
我們先來看看實例:
import numpy as np
e = np.array([10, 20, 30])
f = np.array([3, 5, 7])
print('第一個數組:')
print(e)
print('\n')
print('第二個數組:')
print(f)
print('\n')
print(np.char.center('調用 mod 函數', 20, '*'))
print(np.mod(e, f))
# 返回
第一個數組:
[10 20 30]
第二個數組:
[3 5 7]
*****調用 mod 函數******
[1 0 2]
這裡也需要注意數組必須具有相同的形狀或符合數組廣播規則。
總結本文向大家介紹了 NumPy 的數學函數,包括三角函數、四舍五入函數和算術函數。這些函數在一些數據分析中比較常見,運用得好會使你事半功倍。
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!