np.where(condition)
时间: 2024-09-26 18:08:44 浏览: 27
numpy.where() 用法详解
5星 · 资源好评率100%
`np.where()` 函数是 NumPy 中的一个条件选择函数,它接收一个布尔条件数组 `condition` 和两个可选的数组 `x` 和 `y`,根据 `condition` 的元素状态返回两个数组对应位置的结果。如果 `condition` 的某个索引处为 `True`,则返回 `x` 的相应值;若为 `False` 则返回 `y` 的相应值。基本语法如下:
```python
result = np.where(condition, x, y)
```
例如,假设我们有两数组 `a` 和 `b`,我们可以找出 `a` 中大于 `0` 的元素对应的 `b` 值:
```python
a = np.array([1, -2, 3, -4])
b = np.array([10, 20, 30, 40])
mask = a > 0
output = np.where(mask, b, 0)
print(output)
# 输出:[10 0 30 0]
```
这里 `mask` 是布尔数组,`np.where(mask, b, 0)` 将 `a` 大于0的位置对应的 `b` 值赋给结果,其余位置赋值为0。
阅读全文