
- NumPy 教程
- NumPy - 首頁
- NumPy - 簡介
- NumPy - 環境
- NumPy 陣列
- NumPy - Ndarray 物件
- NumPy - 資料型別
- NumPy 建立和運算元組
- NumPy - 陣列建立例程
- NumPy - 陣列操作
- NumPy - 從現有資料建立陣列
- NumPy - 從數值範圍建立陣列
- NumPy - 迭代陣列
- NumPy - 陣列重塑
- NumPy - 連線陣列
- NumPy - 堆疊陣列
- NumPy - 分割陣列
- NumPy - 扁平化陣列
- NumPy - 陣列轉置
- NumPy 索引和切片
- NumPy - 索引和切片
- NumPy - 高階索引
- NumPy 陣列屬性和操作
- NumPy - 陣列屬性
- NumPy - 陣列形狀
- NumPy - 陣列大小
- NumPy - 陣列步長
- NumPy - 陣列元素大小
- NumPy - 廣播
- NumPy - 算術運算
- NumPy - 陣列加法
- NumPy - 陣列減法
- NumPy - 陣列乘法
- NumPy - 陣列除法
- NumPy 高階陣列操作
- NumPy - 交換陣列的軸
- NumPy - 位元組交換
- NumPy - 複製和檢視
- NumPy - 元素級陣列比較
- NumPy - 陣列過濾
- NumPy - 連線陣列
- NumPy - 排序、搜尋和計數函式
- NumPy - 搜尋陣列
- NumPy - 陣列的並集
- NumPy - 查詢唯一行
- NumPy - 建立日期時間陣列
- NumPy - 二元運算子
- NumPy - 字串函式
- NumPy - 數學函式
- NumPy - 統計函式
- NumPy - 矩陣庫
- NumPy - 線性代數
- NumPy - Matplotlib
- NumPy - 使用 Matplotlib 繪製直方圖
- NumPy - NumPy 的 I/O 操作
- NumPy 排序和高階操作
- NumPy - 陣列排序
- NumPy - 沿軸排序
- NumPy - 使用花式索引排序
- NumPy - 結構化陣列
- NumPy - 建立結構化陣列
- NumPy - 操作結構化陣列
- NumPy - 欄位訪問
- NumPy - 記錄陣列
- Numpy - 載入陣列
- Numpy - 儲存陣列
- NumPy - 向陣列追加值
- NumPy - 交換陣列的列
- NumPy - 向陣列插入軸
- NumPy 處理缺失資料
- NumPy - 處理缺失資料
- NumPy - 識別缺失值
- NumPy - 刪除缺失資料
- NumPy - 填充缺失資料
- NumPy 效能最佳化
- NumPy - 使用陣列進行效能最佳化
- NumPy - 使用陣列進行向量化
- NumPy - 陣列的記憶體佈局
- Numpy 線性代數
- NumPy - 線性代數
- NumPy - 矩陣庫
- NumPy - 矩陣加法
- NumPy - 矩陣減法
- NumPy - 矩陣乘法
- NumPy - 元素級矩陣運算
- NumPy - 點積
- NumPy - 矩陣求逆
- NumPy - 行列式計算
- NumPy - 特徵值
- NumPy - 特徵向量
- NumPy - 奇異值分解
- NumPy - 求解線性方程組
- NumPy - 矩陣範數
- NumPy 元素級矩陣運算
- NumPy - 求和
- NumPy - 平均值
- NumPy - 中位數
- NumPy - 最小值
- NumPy - 最大值
- NumPy 集合操作
- NumPy - 唯一元素
- NumPy - 交集
- NumPy - 並集
- NumPy - 差集
- NumPy 有用資源
- NumPy 編譯器
- NumPy - 快速指南
- NumPy - 有用資源
- NumPy - 討論
NumPy - 平均值
什麼是平均值?
在數學中,平均值是一組數字的平均值。最常見的是算術平均值,它是數字的總和除以數字的個數。
其他型別包括幾何平均值(數字乘積的 n 次方根)和調和平均值(值的數量除以倒數的總和)。
這些不同的平均值根據資料的性質和分析的具體需求來使用。
NumPy mean() 函式
NumPy 中的 mean() 函式計算陣列中元素的算術平均值(平均值)。預設情況下,它計算所有元素的平均值,但您可以指定一個軸來沿行或列計算平均值。
它還可以處理不同的資料型別並允許您定義輸出型別。例如,np.mean([1, 2, 3, 4]) 返回 2.5。
以下是 NumPy 中 mean() 函式的基本語法:
numpy.mean(a, axis=None, dtype=None, out=None, keepdims=False)
其中,
- a: 包含要計算平均值的元素的輸入陣列。
- axis: 計算平均值的軸。如果為None,則計算陣列中所有元素的平均值。對於多維陣列,您可以指定一個軸(0 表示行,1 表示列,依此類推)。
- dtype: 用於計算平均值的資料型別。如果未指定,則預設為輸入陣列的資料型別。
- out: 結果將儲存到的位置。如果提供,它必須與預期輸出具有相同的形狀和型別。
- keepdims: 如果為True,則將縮減的軸保留在結果中作為大小為一的維度。這對於廣播很有用。
計算一維陣列的平均值
如果您有一個一維陣列,您可以使用numpy.mean()函式來計算其元素的平均值。這是一個例子:
import numpy as np # Define a 1D array arr = np.array([1, 2, 3, 4, 5]) # Calculate the mean of all elements mean_value = np.mean(arr) print("Mean of the array:", mean_value)
以下是獲得的輸出:
Mean of the array: 3.0
沿二維陣列的特定軸計算平均值
在二維陣列中,您可以沿特定軸計算平均值。例如,計算沿行或列的平均值:
import numpy as np # Define a 2D array arr_2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) # Mean along rows (axis=1) mean_rows = np.mean(arr_2d, axis=1) # Mean along columns (axis=0) mean_columns = np.mean(arr_2d, axis=0) print("Mean along rows:", mean_rows) print("Mean along columns:", mean_columns)
以下是獲得的輸出:
Mean along rows: [2. 5. 8.] Mean along columns: [4. 5. 6.]
使用指定的資料型別計算平均值
您還可以指定要計算平均值的資料型別。當處理大數字或需要特定精度(例如 float64)的結果時,這尤其有用。這是一個例子:
import numpy as np # Define an array of integers arr_int = np.array([10, 20, 30]) # Calculate the mean with a specified data type (float64) mean_float = np.mean(arr_int, dtype=np.float64) print("Mean with dtype float64:", mean_float)
以下是獲得的輸出:
Mean with dtype float64: 20.0
使用 Keepdims 引數計算平均值
keepdims引數有助於在平均值操作後保留原始陣列的維度。如果設定為True,則結果將與輸入陣列具有相同的維度數,但縮減的軸的大小將為一。
import numpy as np # Define a 2D array arr_2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) # Mean along columns while keeping dimensions mean_keepdims = np.mean(arr_2d, axis=0, keepdims=True) print("Mean with keepdims=True:", mean_keepdims)
以下是獲得的輸出:
Mean with keepdims=True: [[4. 5. 6.]]
NumPy 平均值的應用
numpy.mean()函式在科學計算、資料分析和機器學習中有著廣泛的應用。一些常見的用例是:
- 計算資料集中的平均值:平均值提供資料集的中心值,這在統計和資料分析中至關重要,以瞭解資料分佈。
- 特徵縮放:在機器學習中,計算特徵的平均值有助於歸一化和標準化,確保每個特徵對模型的貢獻相同。
- 財務分析:計算財務資料的平均值,例如股票價格或銷售額,有助於識別趨勢並做出明智的決策。
- 科學測量:平均值用於科學研究以總結實驗資料,提供中心趨勢的度量。
最佳化平均值計算
NumPy 針對快速陣列操作進行了最佳化,numpy.mean()函式效率很高。但是,有一些方法可以進一步最佳化您的平均值計算:
- 使用out引數:如果您想將平均值的結果儲存在一個預先存在的陣列中,您可以使用out引數,這避免了建立新陣列並有助於節省記憶體。
- 明智地使用axis:僅在必要時指定軸。預設情況下,計算整個陣列的平均值是最快的操作,但根據資料,沿特定軸計算平均值可能會更慢。
廣告