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)))
相关推荐
清水白石0083 天前
NumPy 向量化实战指南:从原理到实践的性能革命
python·numpy
Web极客码3 天前
CentOS 7 删除文件却不释放空间?从 inode、文件描述符到 VFS 的底层原理解析
python·centos·numpy
sheyuDemo5 天前
关于深度学习的d2l库的安装
人工智能·python·深度学习·机器学习·numpy
deepxuan7 天前
Day2--python三大库-numpy
开发语言·python·numpy
Flying pigs~~7 天前
数据分析三剑客之Pandas
大数据·数据库·人工智能·数据分析·numpy·pandas
Quintus五等升7 天前
深度学习自用笔记
人工智能·笔记·深度学习·学习·机器学习·bert·numpy
咚咚王者8 天前
人工智能之视觉领域 计算机视觉 第三章 NumPy 与图像矩阵
人工智能·计算机视觉·numpy
星川皆无恙9 天前
豆瓣电影数据爬虫分析:基于 Python 的豆瓣电影数据可视化分析系统
大数据·爬虫·python·算法·机器学习·信息可视化·numpy
星辰徐哥10 天前
人工智能从入门到精通:NumPy 与 Pandas 数据分析基础
人工智能·ai·数据分析·numpy·pandas
玄同76510 天前
NumPy 与 Pandas 中「有无返回值函数」的易错点整理
人工智能·python·机器学习·数据挖掘·数据分析·numpy·pandas