numpy any()返回一个奇特的结果

时间:2013-11-25 21:52:01

标签: python numpy

我有一个numpy.ndarray ary

array([[ -8.34887715e-15],
       [ -8.57980353e-14],
       [ -7.28306304e-14]])

我无法理解以下内容:

ary.any() > 0.1

返回True,即使ary的每个条目明显低于0(根据我的理解,这应该评估为False)。

如果我这样做

ary.any() > 1

评估为False

如果有人能够对此有所了解,那将非常感激!

2 个答案:

答案 0 :(得分:7)

ary.any()返回True iff ary中至少有一个元素非零。然后检查True > .1是否为真,因为True具有数值1.您的意思是

(ary > .1).any()

答案 1 :(得分:0)

当你执行ary.any()时,

arr.any()在布尔值上使用,其计算结果为true和true> 1肯定是假的