jax.numpy.insert#

jax.numpy.insert(arr, obj, values, axis=None)[原始碼]#

在陣列中指定索引處插入條目。

numpy.insert() 的 JAX 實作。

參數:
  • arr (ArrayLike) – 將在其中插入值的陣列物件。

  • obj (ArrayLike | slice) – 指定插入位置的切片或索引陣列。

  • values (ArrayLike) – 要插入的值陣列。

  • axis (int | None | None) – 在多維陣列的情況下,指定插入軸。如果未指定,arr 將會被展平。

返回:

在指定位置插入值後,arr 的副本。

返回類型:

Array

參見

範例

插入單個值

>>> x = jnp.arange(5)
>>> jnp.insert(x, 2, 99)
Array([ 0,  1, 99,  2,  3,  4], dtype=int32)

使用切片插入多個相同的值

>>> jnp.insert(x, slice(None, None, 2), -1)
Array([-1,  0,  1, -1,  2,  3, -1,  4], dtype=int32)

使用索引插入多個值

>>> indices = jnp.array([4, 2, 5])
>>> values = jnp.array([10, 11, 12])
>>> jnp.insert(x, indices, values)
Array([ 0,  1, 11,  2,  3, 10,  4, 12], dtype=int32)

將列插入 2D 陣列

>>> x = jnp.array([[1, 2, 3],
...                [4, 5, 6]])
>>> indices = jnp.array([1, 3])
>>> values = jnp.array([[10, 11],
...                     [12, 13]])
>>> jnp.insert(x, indices, values, axis=1)
Array([[ 1, 10,  2,  3, 11],
       [ 4, 12,  5,  6, 13]], dtype=int32)