填充numpym数组以满足所需的大小



我需要将一个特定形状的数组(4,5(传递给一个函数。然而,当最初生成该阵列时,它可能小于所需的形状,例如(2,5(或(1,5(。如何填充此阵列以满足我所需的(4,5(形状?

对于2D阵列,

np.pad(x, ((num_rows_before, num_rows_after), (num_cols_before, num_cols_after)))

会给你想要的形状。

示例:

In [11]: x
Out[11]: array([[8, 3, 5, 1, 5]])
In [12]: np.pad(x, ((3, 0), (0, 0)))
Out[12]:
array([[0, 0, 0, 0, 0],
[0, 0, 0, 0, 0],
[0, 0, 0, 0, 0],
[8, 3, 5, 1, 5]])
In [13]: np.pad(x, ((0, 3), (0, 0)))
Out[13]:
array([[8, 3, 5, 1, 5],
[0, 0, 0, 0, 0],
[0, 0, 0, 0, 0],
[0, 0, 0, 0, 0]])

通常,您可以为n维数组传递n2元组,其中每个2元组由前后整数对组成,这些整数对指示沿每个轴和每个方向填充的数量。

最新更新