jax.numpy.nancumprod

内容

jax.numpy.nancumprod#

jax.numpy.nancumprod(a, axis=None, dtype=None, out=None)[source]#

沿轴计算元素的累积积,忽略 NaN 值。

JAX 实现 numpy.nancumprod()

参数:
  • a (ArrayLike) – 要累积的 N 维数组。

  • axis (int | None) – 沿其累积的整数轴。如果为 None(默认值),则数组将被展平并在展平的轴上累积。

  • dtype (DTypeLike | None) – 可选地指定输出的 dtype。如果未指定,则输出 dtype 将与输入 dtype 匹配。

  • out (None) – JAX 未使用

返回值:

包含沿给定轴累积的积的数组。

返回类型:

数组

参见

示例

>>> x = jnp.array([[1., 2., jnp.nan],
...                [4., jnp.nan, 6.]])

标准累积积将传播 NaN 值

>>> jnp.cumprod(x)
Array([ 1.,  2., nan, nan, nan, nan], dtype=float32)

nancumprod() 会忽略 NaN 值,有效地将其替换为 1

>>> jnp.nancumprod(x)
Array([ 1.,  2.,  2.,  8.,  8., 48.], dtype=float32)

沿轴 1 的累积积

>>> jnp.nancumprod(x, axis=1)
Array([[ 1.,  2.,  2.],
       [ 4.,  4., 24.]], dtype=float32)