當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Python NumPy squeeze方法用法及代碼示例

Numpy 的 squeeze(~) 方法返回刪除了冗餘軸的 Numpy 數組。檢查下麵的示例以進行說明。

參數

1. a | array-like

輸入數組。

2. axis | int | optional

如果多餘則要刪除的軸。默認情況下,所有冗餘軸都會被刪除。

返回值

刪除了冗餘軸的新 Numpy 數組。

例子

基本用法

假設我們有以下二維數組:

a = np.array([[4],[5],[6]])
a



array([[4],
       [5],
       [6]])

您能看出在這種情況下如何將 a 簡單地表示為一維數組 [4,5,6] 嗎? squeeze(~) 方法允許我們執行此操作:

a.squeeze()



array([4, 5, 6])

同樣的原則也適用於以下情況:

a = np.array([[[1,2],[3,4]]])
a



array([[[1, 2],
        [3, 4]]])

在這裏,我們有一個 3D 數組,但很明顯它可以簡化為 2D 數組,如下所示:

a.squeeze()



array([[1, 2],
       [3, 4]])

僅壓縮軸的子集

假設我們有以下 3D 數組:

a = np.array([[[4],[5],[6]]])
a



array([[[4],
        [5],
        [6]]])

很明顯,這可以簡化為二維數組,甚至可以簡化為一維數組。我們可以使用 axis 參數指定要減少到哪個維度。

簡化為二維數組:

np.squeeze(a, axis=0)



array([[4],
       [5],
       [6]])

請注意,默認情況下,所有冗餘軸都會被刪除:

np.squeeze(a)



array([4, 5, 6])

相關用法


注:本文由純淨天空篩選整理自Isshin Inada大神的英文原創作品 NumPy | squeeze method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。