將維度新增到 NumPy 陣列
本教程將介紹在 Python 中為 NumPy 陣列新增新維度的方法。
使用 numpy.expand_dims()
函式為 NumPy 陣列新增維度
numpy.expand_dims()
函式 為 NumPy 陣列新增了一個新維度。它將要擴充套件的陣列和新軸作為引數,並返回一個具有額外維度的新陣列。我們可以在 numpy.expand_dims()
函式的 axis
引數中指定要擴充套件的軸。請參考以下程式碼示例。
import numpy as np
array = np.array([1,2,3])
print(array.shape)
array = np.expand_dims(array, axis = 0)
print(array.shape)
array = np.append(array, [[4,5,6]], axis=0)
print(array)
輸出:
(3,)
(1, 3)
[[1 2 3]
[4 5 6]]
在上面的程式碼中,我們首先使用 np.array()
函式建立了一個一維陣列 array
,並使用 array.shape
屬性列印了 array
的形狀。然後,我們使用 np.expand_dims(array, axis=0)
函式將 array
轉換為二維陣列,並使用 array.shape
屬性列印了 array
的新形狀。最後,我們使用 np.append()
函式將新元素附加到 array
並列印了 array
的元素。
使用 Python 中的 numpy.newaxis
函式為 NumPy 陣列新增維度
以前的方法可以完成這項工作並且現在工作正常。唯一的問題是以前的方法已被棄用,將來可能無法與 Python 的較新版本一起使用。numpy.newaxis
方法 也可用於實現與前一種方法相同的目標,但程式碼和複雜性更少。有了這種方法,我們也不必擔心在 Python 的後續版本中不被支援。numpy.newaxis
方法為我們在 Python 中的陣列新增了一個新維度。
import numpy as np
array = np.array([1,2,3])
print(array.shape)
array = array[np.newaxis]
print(array.shape)
array = np.append(array, [[4,5,6]], axis=0)
print(array)
輸出:
(3,)
(1, 3)
[[1 2 3]
[4 5 6]]
我們使用 array[np.newaxis]
方法將 array
轉換為二維陣列,並使用 array.shape
屬性列印了 array
的新形狀。最後,我們使用 np.append()
函式將新元素附加到 array
並列印了 array
的元素。
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedIn