WeHelp
NumPy 是 Python 資料科學、機器學習的核心套件庫,協助您掌握基礎的 NumPy 觀念和操作。
  1. 簡介、安裝、快速開始
  2. 多維陣列簡介、建立
  3. 多維陣列的基本運算
  4. 多維陣列的矩陣運算
  5. 多維陣列的統計運算
  6. 多維陣列的邏輯運算
  7. 多維陣列的索引與切片
  8. 多維陣列的資料型態
多維陣列的統計運算
NumPy 的 `ndarray` 提供許多統計函式,可分為描述統計、聚合統計,以及索引位置查找。以下以簡單範例說明。 ## 1. 基本描述統計 用來了解資料的集中趨勢與分散程度,例如平均數、中位數、標準差。 ```python import numpy as np a = np.array([1, 2, 3, 4, 5]) print(np.mean(a)) # 平均數:3.0 print(np.median(a)) # 中位數:3.0 print(np.std(a)) # 標準差:約 1.414 ``` 常用函式包括: - `np.mean()`:平均數 - `np.median()`:中位數 - `np.std()`:標準差 - `np.var()`:變異數 --- ## 2. 聚合統計 聚合統計會將多個元素彙整成一個或較少的結果,例如總和、最小值、最大值。也可以透過 `axis` 指定計算方向。 ```python b = np.array([ [1, 2, 3], [4, 5, 6] ]) print(np.sum(b)) # 所有元素總和:21 print(np.sum(b, axis=0)) # 依欄加總:[5 7 9] print(np.sum(b, axis=1)) # 依列加總:[6 15] ``` 其他常用聚合函式包括: - `np.min()`、`np.max()`:最小值、最大值 - `np.argmin()`、`np.argmax()`:最小值、最大值的位置 - `np.prod()`:所有元素乘積 - `np.cumsum()`:累積總和 --- ## 3. 索引位置的查找 可使用 `argmin()`、`argmax()` 查找最小值或最大值的索引,也可用 `where()` 找出符合條件的位置。 ```python c = np.array([ [3, 8], [2, 5] ]) flat_index = np.argmax(c) position = np.unravel_index(flat_index, c.shape) print(position) # (0, 1),表示最大值 8 位於第 0 列、第 1 欄 print(np.where(c > 4)) # (array([0, 1]), array([1, 1])) ``` 其中: - `np.argmax()`:找最大值的索引 - `np.argmin()`:找最小值的索引 - `np.where(條件)`:找出符合條件的元素位置 - `np.unravel_index()`:將扁平索引轉換成多維索引 `axis=0` 通常代表沿著列方向計算、逐欄聚合;`axis=1` 則代表逐列聚合。
相關學習地圖、教學課程
Python 資料工程
從 0 開始,成為資料工程師的學習路徑。