在NumPy 中將索引數組轉換為One-Hot 編碼數組
通常,有必要轉換一維索引組到一個二維數組中,其中每一行代表原始中相應索引的one-hot編碼數組。
範例:
讓我們有一個索引'a' 的一維陣列:
<code class="python">a = np.array([1, 0, 3])</code>
我們的目標是建立一個2D 陣列' b' 其中每一行都是對應索引的one-hot 編碼'a':
<code class="python">b = np.array([[0, 1, 0, 0], [1, 0, 0, 0], [0, 0, 0, 1]])</code>
解:
要實現此轉換,我們可以利用以下步驟:
<code class="python">b = np.zeros((a.size, a.max() + 1))</code>
<code class="python">b[np.arange(a.size), a] = 1</code>
輸出:
執行此程式碼會產生所需的 one-hot 編碼陣列 ' b':
<code class="python">[[ 0. 1. 0. 0.] [ 1. 0. 0. 0.] [ 0. 0. 0. 1.]]</code>
以上是如何在 NumPy 中將索引數組轉換為 One-Hot 編碼數組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!