NumPy 建立陣列
建立 NumPy ndarray 物件
NumPy 用於處理陣列。NumPy 中的陣列物件稱為 ndarray
。
我們可以使用 array()
函式來建立 NumPy ndarray
物件。
type(): 這個內建的 Python 函式告訴我們傳遞給它的物件的型別。如上面的程式碼所示,它顯示 arr
是 numpy.ndarray
型別。
要建立 ndarray
,我們可以將列表、元組或任何類似陣列的物件傳遞給 array()
方法,它將被轉換為 ndarray
。
陣列中的維度
陣列中的維度是陣列深度的一個級別(巢狀陣列)。
巢狀陣列: 是以陣列作為其元素的陣列。
0-D 陣列
0-D 陣列,或標量,是陣列中的元素。陣列中的每個值都是一個 0-D 陣列。
1-D 陣列
以 0-D 陣列為元素的陣列稱為一維或 1-D 陣列。
這些是最常見和最基本的陣列。
示例
建立一個包含值 1,2,3,4,5 的 1-D 陣列
import numpy as np
arr = np.array([1, 2, 3, 4, 5])
print(arr)
自己動手試一試 »
2-D 陣列
以 1-D 陣列為元素的陣列稱為 2-D 陣列。
這些通常用於表示矩陣或二階張量。
NumPy 有一個專門用於矩陣運算的子模組,稱為 numpy.mat
。
示例
建立一個包含兩個陣列(值為 1,2,3 和 4,5,6)的 2-D 陣列
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
print(arr)
自己動手試一試 »
3-D 陣列
以 2-D 陣列(矩陣)為元素的陣列稱為 3-D 陣列。
這些通常用於表示三階張量。
示例
建立一個包含兩個 2-D 陣列的 3-D 陣列,每個 2-D 陣列都包含兩個陣列(值為 1,2,3 和 4,5,6)
import numpy as np
arr = np.array([[[1, 2, 3], [4, 5, 6]], [[1, 2, 3], [4, 5, 6]]])
print(arr)
自己動手試一試 »
檢查維度數量?
NumPy 陣列提供了 ndim
屬性,該屬性返回一個整數,告訴我們陣列有多少個維度。
示例
檢查陣列有多少個維度
import numpy as np
a = np.array(42)
b = np.array([1, 2, 3, 4, 5])
c = np.array([[1, 2, 3], [4, 5, 6]])
d = np.array([[[1, 2, 3], [4, 5, 6]], [[1, 2, 3], [4, 5, 6]]])
print(a.ndim)
print(b.ndim)
print(c.ndim)
print(d.ndim)
自己動手試一試 »
更高維度的陣列
陣列可以具有任意數量的維度。
建立陣列時,可以使用 ndmin
引數定義維數。
示例
建立一個具有 5 個維度的陣列,並驗證它確實有 5 個維度
import numpy as np
arr = np.array([1, 2, 3, 4], ndmin=5)
print(arr)
print('number of dimensions :', arr.ndim)
自己動手試一試 »
在這個陣列中,最內層的維度(第 5 維)有 4 個元素,第 4 維有 1 個元素(即向量),第 3 維有 1 個元素(即包含向量的矩陣),第 2 維有 1 個元素(即 3D 陣列),而第 1 維有 1 個元素(即 4D 陣列)。