NumPy 簡介
NumPy
是 Python 的數學函式庫,主要用來處理數字和陣列(類似數學中的矩陣)。它比 Python 內建的 list
更快,適合做數據運算。
以下是 NumPy
使用方法的重點摘要:
1. 安裝與導入
如果還沒安裝 NumPy
,可以先執行:
然後在 Python 程式中引入:
2. 創建 NumPy 陣列
(1) 轉換 Python list
成 numpy
陣列
📌 差異:NumPy 陣列比 list
更快,且能進行向量計算。
(2) 創建特殊陣列
- 全零陣列
- 全一陣列
- 範圍陣列 (
arange
)
- 隨機陣列
3. NumPy 陣列的運算
NumPy 允許我們直接對整個陣列進行計算,而不需要用 for
迴圈:
arr = np.array([1, 2, 3, 4])
print(arr + 2) # [3 4 5 6]
print(arr * 3) # [3 6 9 12]
print(arr ** 2) # [1 4 9 16]
📌 重點:NumPy 陣列的計算是「整體運算」,不用寫迴圈。
4. 陣列形狀 (Shape)
NumPy 不只有一維陣列,還能建立二維陣列(類似數學中的矩陣):
結果:
- 取得形狀:
- 變更形狀:
結果:
5. 簡單統計運算
NumPy 提供許多數學函式:
arr = np.array([1, 2, 3, 4, 5])
print(np.mean(arr)) # 平均值: 3.0
print(np.sum(arr)) # 總和: 15
print(np.max(arr)) # 最大值: 5
print(np.min(arr)) # 最小值: 1
print(np.std(arr)) # 標準差: 1.414
6. 簡單索引與切片
和 list
類似,可以取出特定數值:
arr = np.array([10, 20, 30, 40, 50])
print(arr[1]) # 取第 2 個元素: 20
print(arr[:3]) # 取前 3 個元素: [10 20 30]
print(arr[-2:]) # 取最後 2 個元素: [40 50]
7. NumPy 與 matplotlib
搭配
可以用 NumPy
生成數據,並用 matplotlib
畫圖:
import matplotlib.pyplot as plt
x = np.linspace(0, 10, 100) # 產生 100 個 0~10 的等距點
y = np.sin(x) # 計算對應的正弦值
plt.plot(x, y)
plt.show()
📌 這樣就能畫出一條漂亮的正弦波!