np.where替换值
时间: 2024-06-18 22:01:29 浏览: 72
基于torch.where和布尔索引的速度比较
5星 · 资源好评率100%
`np.where`是NumPy库中的一个函数,它主要用于根据条件对数组中的元素进行替换。这个函数的基本语法是:
```python
np.where(condition, x, y)
```
- `condition`: 这是一个布尔数组,决定哪些元素会被处理。如果`condition`为`True`,则对应位置的`x`值会被应用;如果为`False`,则对应位置的`y`值会被应用。
- `x` 和 `y`: 这两个参数通常也是数组,它们的形状需要和`condition`匹配。`x`和`y`分别提供了新的值,当`condition`为`True`或`False`时用来替换原数组中对应位置的值。
例如,如果你有一个数组`arr`,你想将所有小于0的元素替换为0,你可以这样做:
```python
new_arr = np.where(arr < 0, 0, arr)
```
这会创建一个新的数组`new_arr`,其中`arr`中小于0的元素被替换为0,其他元素保持不变。
阅读全文