了解 NumPy 的重塑函數中的「-1」值
NumPy 的重塑函數允許您轉換多維數組的形狀。在指定新形狀時,「-1」值通常用作佔位符,但其解釋與 array[-1] 作為最後一個元素的典型含義不同。
在 reshape 的上下文中,「 -1」表示未知尺寸。此函數將根據陣列的現有形狀和指定的其他維度自動決定此維度。涉及的關鍵原則是新形狀必須與原始形狀相容。
為了更好地理解「-1」的工作原理,請考慮以下範例:
在本例中, a 的形狀為 (2, 4)。透過使用 reshape(-1),我們將陣列展平為一維數組。新形狀變為 (8,),與原始形狀 (2x4 = 8) 相容。
現在,讓我們來探索使用「-1」重塑陣列的不同方式:
重塑為單一特徵:
要將陣列重塑為具有單一特徵(即單一列)的形式,我們可以使用reshape(-1, 1):
這將產生(8, 1) 的形狀,其中每個元素都是原始數組中的一行。
重塑為單一樣本:
類似地,要將陣列重塑為具有單一樣本(即單行)的形式,我們可以使用reshape(1, -1):
這將產生(1, 8) 的形狀,其中每個元素都是原始數組中的一列。
使用未知維度重塑:
如果我們只指定一個維度如果為“-1”,該函數將根據原始形狀和提供的維度計算未知維度:
在此範例中,我們將行數指定為2。此函數將計算列數為 6,得到的形狀為 (2, 6)。
未知多個維度的錯誤:
需要注意的是,指定多個維度因為「-1」會導致錯誤,因為函數只能處理一個未知維度:
這將產生錯誤訊息「只能指定一個未知維度。」
以上是NumPy 的 Reshape 函數中「-1」值的意義和用法是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!