如何使用 NumPy 的「np.newaxis」在陣列操作中啟用廣播?

Mary-Kate Olsen
發布: 2024-10-26 06:18:30
原創
883 人瀏覽過

How can NumPy's 'np.newaxis' be used to enable broadcasting in array operations?

什麼是NumPy 的'np.newaxis' 以及如何使用它

理解'np.newaxis'

理解'np.newaxis'

理解'np.newaxis'

理解'np.newaxis'

理解'np.newaxis'

理解'np.newaxis'

理解'np.newaxis'

理解'np.newaxis'

NumPy 的“np.newaxis”,也稱為“None”,是一個偽索引,用於暫時向數組添加軸。使用一次時,它將數組的維度增加一。例如,1D 數組變成 2D 數組,2D 數組變成 3D 數組等等。

使用'np.newaxis' 的場景

場景1:從一維陣列建立行/列向量
<code class="python"># Create a row vector from a 1D array
x = np.arange(4)
x_row_vector = x[np.newaxis, :]</code>
登入後複製

'np.newaxis' 可用於將一維數組明確轉換為行向量(透過沿第一維插入軸)或列向量(透過沿第二維插入軸)。
<code class="python"># Add a 1D array to a 2D array
x1 = np.array([1, 2, 3, 4, 5])
x2 = np.array([5, 4, 3])
x1_new = x1[:, np.newaxis]    # Insert axis for broadcasting
result = x1_new + x2</code>
登入後複製

場景 2:啟用 NumPy 廣播

'np.newaxis' 在執行涉及以下操作時非常有用NumPy 廣播。例如,考慮新增兩個形狀為「(5,)」和「(3,)」的陣列。 NumPy 會因形狀不相容而引發錯誤。透過使用 'np.newaxis' 增加一個陣列的維度,可以啟用廣播來執行該操作。

場景3:將陣列提升到更高的維度

    'np.newaxis' 可以多次使用以將陣列提升到更高維度,這對於高階數組(張量)可能是必需的。
  • 使用範例
至使用'np.newaxis',將其插入切片表達式中。例如:啟用廣播:取代: 'np.expand_dims''np.expand_dims''np.expand_dims''np.expand_dims''np.expand_dims''np.expand_dims'附加註解' np.newaxis' 暫時新增一個軸,與將陣列重塑為新佈局的 'np.reshape' 不同。 'np.newaxis' 和 'None' 是等效的物件。

以上是如何使用 NumPy 的「np.newaxis」在陣列操作中啟用廣播?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!