如何仅剪切 numpy 数组的某些值?

How to clip only some values of numpy array?

我有一个数组(100,72),我只需要裁剪一些列的值。例如,我希望仅将第 15 列到第 72 列中的负值设置为 0 我已经看到使用 np.clip() 函数是不可能做到这一点的。 有什么快速的方法还是必须分解和重新组装数组?

这样做:

arr[:, 15:73] = np.clip(arr[:, 15:73], a_min = 0)

一般来说,如果cols是列索引列表,可以使用arr[:, cols]选择性地对指定的列进行操作。参考:numpy indexing.