np.where多个筛选条件

a = [0,1,2,3,4,5]

想要筛选出"大于等于2并且小于等于4"的数字下标,首先尝试了如下写法

python 复制代码
import numpy as np
a = np.arange(6)
print(np.where(a>=2 & a<=4))

程序会报错

bash 复制代码
Traceback (most recent call last):
  File "C:\Program Files\JetBrains\PyCharm Community Edition 2023.2.3\plugins\python-ce\helpers\pydev\pydevconsole.py", line 364, in runcode
    coro = func()
  File "<input>", line 1, in <module>
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()

正确写法是

python 复制代码
import numpy as np
a = np.arange(6)
print(np.where((a>=2) & (a<=4)))

给每个条件加上括号即可。

还有另外一种写法,使用np.logical_and来实现。

python 复制代码
import numpy as np
a = np.arange(6)
print(np.where(np.logical_and(a>=2, a<=4)))
相关推荐
CClaris2 小时前
手撕 LSTM:用 NumPy 从零实现 LSTM 前向传播
人工智能·numpy·lstm
我是哈哈hh17 小时前
【Python数据分析】Numpy总结
开发语言·python·数据挖掘·数据分析·numpy·python数据分析
编程设计3661 天前
Numpy核心功能简易代码
numpy
家家小迷弟3 天前
docker容器内部安装python和numpy的方法
python·docker·numpy
蓝眸少年CY3 天前
Python科学计算 Numpy库
开发语言·python·numpy
谢景行^顾4 天前
numpy
开发语言·python·numpy
咚咚王者8 天前
人工智能之数据分析 numpy:第十三章 工具衔接与迁移
人工智能·数据分析·numpy
咚咚王者8 天前
人工智能之数据分析 numpy:第九章 数组运算(二)
人工智能·数据分析·numpy
咚咚王者9 天前
人工智能之数据分析 numpy:第十二章 数据持久化
人工智能·数据分析·numpy
咚咚王者11 天前
人工智能之数据分析 numpy:第十五章 项目实践
人工智能·数据分析·numpy