為 NumPy 陣列新增額外的欄位
NumPy 是 Python 中強大的科學計算庫,提供了一系列操作方法多維資料。其中包括向數組添加額外列的任務。讓我們探索如何使用專門的 NumPy 函數來實現這一點,這些函數提供了一種方便有效的方法來擴展數組的維度。
使用np.r_[...] 和np.c_[.. .]
要將額外的列,兩個有用的NumPy函數是np.r_[...] (用於新增行)和np.c_[...] (用於新增列)。與 np.vstack 和 np.hstack 不同,這些函數使用方括號 [] 而不是圓括號 ()。
考慮以下2D 陣列:
<code class="python">import numpy as np a = np.array([ [1, 2, 3], [2, 3, 4], ])</code>
增加一列零第二個軸,使用np.c_[...]:
<code class="python">b = np.c_[a, np.zeros(a.shape[0])]</code>
這會產生所需的輸出:
<code class="python">b = np.array([ [1, 2, 3, 0], [2, 3, 4, 0], ])</code>
其他範例
np.r_[...] 和np.c_[...] 提供了新增行/列的多功能性。以下是一些進一步的例子:
<code class="python">N = 3 A = np.eye(N) # Add a column np.c_[A, np.ones(N)] # Add two columns np.c_[np.ones(N), A, np.ones(N)] # Add a row np.r_[A, [A[1]]] # Mix vectors and scalars np.r_[A[0], 1, 2, 3, A[1]] # Use lists or tuples np.r_[A[0], [1, 2, 3], A[1]] np.r_[A[0], (1, 2, 3), A[1]] # Use Python slice syntax np.r_[A[0], 1:4, A[1]]</code>
理解方括號與圓括號
值得注意的是np.r_[...] 和np.r_ [...] 。 c_[...] 使用方括號,而 np.vstack 和 np.hstack 使用圓括號。這是因為在方括號內使用時,Python 將 1:4 解釋為切片物件。此切片物件代表值 1、2 和 3,然後將其新增至陣列中。
以上是如何使用「np.c_[...]」為 NumPy 陣列新增額外的欄位?的詳細內容。更多資訊請關注PHP中文網其他相關文章!