NumPy 陣列也可以去做數學相關的運算,像是它可以做基本的數學加減乘除。
import numpy as np
a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
print(a + b) # [5 7 9]
print(a - b) # [-3 -3 -3]
print(a * b) # [4 10 18]
print(a / b) # [0.25 0.4 0.5]
print(a // b) # [0 0 0]
print(a % b) # [1 2 3]
print(a ** b) # [1 32 729]
我們也可以使用 NumPy 提供的函式去做加減乘除。
函式 | 說明 |
---|---|
np.add(a, b) | 加法 |
np.subtrack(a, b) | 減法 |
np.multiply(a, b) | 乘法 |
np.divide(a,b) | 除法 |
np.floor_divide(a, b) | 整數除法 |
np.mod(a, b) | 取餘數 |
np.power(a, b) | 乘方 |
除此之外,NumPy 也提供了很多和 math 模組相似的函式,
下面來介紹一些比較常見的函式。
函式 | 說明 |
---|---|
np.sin() | 正弦函數,參數為弧度 |
np.cos() | 餘弦函數,參數為弧度 |
np.tan() | 正切函數,參數為弧度 |
np.arcsin() | 反正弦函數,參數為弧度 |
np.arccos() | 反餘弦函數,參數為弧度 |
np.arctan() | 反正切函數,參數為弧度 |
函式 | 說明 |
---|---|
np.exp(x) | e的x次方 |
np.log(x) | x以e為底的對數 |
np.log10(x) | x以10為底的對數 |
函式 | 說明 |
---|---|
np.mean() | 計算平均值 |
np.median() | 計算中位數 |
np.std() | 計算標準差 |
NumPy 也提供對於矩陣運算專門的函式,像是
np.dot(a, b) 計算兩個陣列的點積(矩陣乘法)。
c = np.array([[1, 2], [3, 4]])
d = np.array([[5, 6], [7, 8]])
print(np.dot(c, d))
# [[19 22]
# [43 50]]