【发布时间】:2021-06-10 13:15:47
【问题描述】:
当索引一个 numpy 数组时,我可以选择所有符合特定条件的条目。例如,对于 3 的倍数:
array = np.array([[1,2,3,4,5],[6,7,8,9,10],[11,12,13,14,15], [16,17,18,19,20]])
array[array%3 == 0]
现在,如果我想选择值是 3 倍数且小于 10 的所有条目,我希望只在括号中添加 and 或 or 就足够了。但是,运行以下代码时出现错误:
array = np.array([[1,2,3,4,5],[6,7,8,9,10],[11,12,13,14,15], [16,17,18,19,20]])
array[array%3 == 0 and array<10]
ValueError:具有多个元素的数组的真值是 模糊的。使用 a.any() 或 a.all()
在索引数组时,编写此类逻辑子句的正确方法是什么?
【问题讨论】:
标签: python arrays numpy indexing