强制使Numpy数组中的元素在指定范围内

5
我有一个numpy数组,我想强制将每个小于零的元素变为零,并将每个大于255的元素强制变为255。
例如:x = (-1,7,255,299) => (0,7,255,255)
是否有一个不太复杂的一行代码可以实现这个功能?

也许你应该更准确地反映你的具体问题,修改这个问题的标题。 - senderle
1个回答

8
答案是numpy.clip。
numpy.clip(x, 0, 255)

关于标题中发布的问题:不要这样做。你可以将lambda函数应用于每个元素,使用vectorize,但这通常不是最好的选择。


从技术上讲,@senderle回答了我的问题,但是clip明显更快。 - Dex
1
@Dex,那是因为你问错了问题。 - Winston Ewert

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接