cupy.putmask#
- cupy.putmask(a, mask, values)[source]#
根据条件掩码和输入值就地改变数组元素。
对于
mask.flat[n]==True
的每个 n,设置a.flat[n] = values[n]
。如果 values 的大小与 a 和 mask 不同,它将被重复。- 参数:
a (cupy.ndarray) – 目标数组。
mask (cupy.ndarray) – 布尔掩码数组。它必须与 a 具有相同的形状。
values (cupy.ndarray 或 scalar) – 当 mask 为 True 时,要放入 a 中的值。如果 values 小于 a,它将被重复。
示例
>>> x = cupy.arange(6).reshape(2, 3) >>> cupy.putmask(x, x>2, x**2) >>> x array([[ 0, 1, 2], [ 9, 16, 25]])
如果 values 小于 a,则会被重复
>>> x = cupy.arange(6) >>> cupy.putmask(x, x>2, cupy.array([-33, -44])) >>> x array([ 0, 1, 2, -44, -33, -44])
另请参阅