
- 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 ndarray.flatten() 方法
NumPy 的ndarray.flatten()方法用於返回一個新的1維陣列,它是原始陣列的扁平化副本。
ndarray.flat屬性是一個迭代器,而ndarray.flatten()建立一個新的陣列。
我們可以指定扁平化的順序:'C'表示行優先(C風格)順序,'F'表示列優先(Fortran風格)順序,'A'表示如果陣列是Fortran連續的則為'F',否則為'C','K'表示元素在記憶體中出現的順序。
語法
Numpy ndarray.flatten 函式的語法如下:
ndarray.flatten(order='C')
引數
此函式接受一個引數,即 'C',表示行優先,預設為此值。
我們可以賦值為 'F':列優先,'A':如果 a 在記憶體中是 Fortran 連續的,則以列優先順序展開,否則以行優先順序展開;'K':按照元素在記憶體中出現的順序展開 a。
返回值
此函式返回一個一維 NumPy 陣列,其中包含輸入陣列中所有元素,按照指定的順序排列。
示例 1
以下是 NumPy ndarray.flatten() 方法的示例,它展示瞭如何將一個二維陣列以預設的行優先順序展平成一維陣列,結果為 [1, 2, 3, 4, 5, 6]:
import numpy as np # Creating a 2D numpy array array_2d = np.array([[1, 2, 3], [4, 5, 6]]) # Flattening the array using the default order ('C') flattened_array = array_2d.flatten() print("Original 2D array:") print(array_2d) print("\nFlattened array (row-major order):") print(flattened_array)
輸出
Original 2D array: [[1 2 3] [4 5 6]] Flattened array (row-major order): [1 2 3 4 5 6]
示例 2
在這個例子中,我們展示瞭如何將一個三維陣列以列優先順序展平成一維陣列,結果為 [1, 5, 3, 7, 2, 6, 4, 8]:
import numpy as np # Creating a 3D numpy array array_3d = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]]) # Flattening the array using the 'F' order flattened_array = array_3d.flatten(order='F') print("Original 3D array:") print(array_3d) print("\nFlattened array (column-major order):") print(flattened_array)
輸出
Original 3D array: [[[1 2] [3 4]] [[5 6] [7 8]]] Flattened array (column-major order): [1 5 3 7 2 6 4 8]
示例 3
下面的例子展示瞭如何使用 'A' 順序展平一個 Fortran 連續陣列,這將導致列優先順序展平,結果為 [1, 4, 2, 5, 3, 6]:
import numpy as np # Creating a 2D numpy array with Fortran-contiguous memory layout array_fortran = np.asfortranarray([[1, 2, 3], [4, 5, 6]]) # Flattening the array using the 'A' order flattened_array = array_fortran.flatten(order='A') print("Original Fortran-contiguous 2D array:") print(array_fortran) print("\nFlattened array ('A' order):") print(flattened_array)
輸出
Original Fortran-contiguous 2D array: [[1 2 3] [4 5 6]] Flattened array ('A' order): [1 4 2 5 3 6]
numpy_array_manipulation.htm
廣告