
- 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 reshape() 函式
NumPy 的reshape()函式用於更改陣列的形狀而不改變其資料。它返回一個具有指定維度的新檢視或陣列,前提是元素總數保持不變。
此函式有兩個主要引數:一個是要重塑的陣列,另一個是指定新形狀的元組。如果新形狀與元素總數不相容,則會引發“ValueError”。
NumPy 的reshape()函式對於將資料轉換為適合不同處理要求的格式非常有用,例如在行主序和列主序格式之間轉換,或為機器學習模型準備資料。
語法
NumPy reshape()函式的語法如下:
numpy.reshape(arr, newshape, order='C')
引數
以下是 NumPy reshape() 函式的引數:
- arr: 要重塑的輸入陣列。
- newshape: 此引數可以是整數或整數元組。新形狀應與原始形狀相容。
- order: 此引數定義讀寫順序。如果為 'C' 則為行主序,'F' 則為列主序。
返回值
reshape() 函式返回一個具有相同資料但不同形狀的新陣列。
示例 1
以下是 NumPy reshape() 函式的基本示例。在這個例子中,我們將一個包含 8 個元素的一維陣列重塑為一個 2x4 的二維陣列:
import numpy as np # Create a 1D array with 8 elements a = np.arange(8) print('The original array:') print(a) print('\n') # Reshape the array to a 2D array with shape (4, 2) b = a.reshape(4, 2) print('The modified array:') print(b)
輸出
The original array: [0 1 2 3 4 5 6 7] The modified array: [[0 1] [2 3] [4 5] [6 7]]
示例 2
此示例使用 -1 自動計算將 2x3 陣列重塑為 3x2 陣列的適當維度:
import numpy as np # Original array a = np.array([[1, 2, 3], [4, 5, 6]]) # Reshaping the array to 3x2 using -1 to infer one of the dimensions reshaped_array = np.reshape(a, (3, -1)) print("Original array:") print(a) print("Reshaped array (3x2):") print(reshaped_array)
輸出
Original array: [[1 2 3] [4 5 6]] Reshaped array (3x2): [[1 2] [3 4] [5 6]]
示例 3
眾所周知,我們可以根據需要分配 order 引數,因此,在下面的示例中,我們透過將 order 定義為 'F'(即 Fortran 式列主序)來將 2x3 陣列重塑為 3x2 陣列:
import numpy as np # Original array a = np.array([[1, 2, 3], [4, 5, 6]]) # Reshaping the array to 3x2 in Fortran-like order reshaped_array = np.reshape(a, (3, 2), order='F') print("Original array:") print(a) print("Reshaped array (3x2) in Fortran-like order:") print(reshaped_array)
輸出
Original array: [[1 2 3] [4 5 6]] Reshaped array (3x2) in Fortran-like order: [[1 5] [4 3] [2 6]]
numpy_array_manipulation.htm
廣告