np.where多个筛选条件
2023-12-24 17:11:42
?a = [0,1,2,3,4,5]
想要筛选出“大于等于2并且小于等于4”的数字下标,首先尝试了如下写法
import numpy as np
a = np.arange(6)
print(np.where(a>=2 & a<=4))
程序会报错
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()
正确写法是
import numpy as np
a = np.arange(6)
print(np.where((a>=2) & (a<=4)))
?给每个条件加上括号即可。
还有另外一种写法,使用np.logical_and来实现。
import numpy as np
a = np.arange(6)
print(np.where(np.logical_and(a>=2, a<=4)))
文章来源:https://blog.csdn.net/qq_32862515/article/details/135182299
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!