我想用乘法器(例如2)来缩放numpy数组的特定值(例如大于5)。我知道我可以通过循环来实现这一点,但我想避免循环。我想我可以实现这一点,不知何故与numpy面具,但我不知道如何实现它。为了证明我的目标是实现我使用了虚函数规模的数组。你知道吗
下面是一个最小的工作示例
import numpy as np
numbers = np.array([-3, 5, 2, -1, -15, 10])
mask = np.abs(numbers) > 5
numbers_scaled = scale_array(array=numbers, mask=mask, scale_factor=2)
print(numbers_scaled) # np.array([-3, 5, 2, -1, -30, 20])
在编写时,
mask = np.abs(numbers) > 5
会给出要缩放的位置。你知道吗简单地做
numbers[mask] *= 2
就可以了:)将乘以2的屏蔽值直接指定给原始数组,如下所示:
相关问题 更多 >
编程相关推荐