numpy.all_close是否检查数组的形状,就像要比较的元素一样

时间:2014-09-10 19:06:30

标签: python numpy

从文档中不清楚numpy.all_close是否检查形状。

1 个答案:

答案 0 :(得分:1)

allclose的代码是:

def allclose(a, b, rtol=1.e-5, atol=1.e-8):
    # doc...
    x = array(a, copy=False, ndmin=1)
    y = array(b, copy=False, ndmin=1)
    # special handling of 'inf'...
    with errstate(invalid='ignore'):
        r = all(less_equal(abs(x-y), atol + rtol * abs(y)))

    return r

请注意,它确保输入是数组(至少有1个暗淡)。这就是它适用于嵌套列表的原因。

其次,核心行动是x-y。它检查所有术语的绝对差异是否很小。因此,如果它可以广播数组来进行数学运算,它可以比较数组。这是发布广播ValueError的减法。