• numpy.isclose


    参考  numpy.isclose - 云+社区 - 腾讯云

    numpy.isclose(a, b, rtol=1e-05, atol=1e-08, equal_nan=False)[source]

    Returns a boolean array where two arrays are element-wise equal within a tolerance.

    The tolerance values are positive, typically very small numbers. The relative difference (rtol * abs(b)) and the absolute difference atol are added together to compare against the absolute difference between a and b.

    Warning:The default atol is not appropriate for comparing numbers that are much smaller than one (see Notes).

    Parameters:

    a, b:array_like

    Input arrays to compare.

    rtol:float

    The relative tolerance parameter (see Notes).

    atol:float

    The absolute tolerance parameter (see Notes).

    equal_nan:bool

    Whether to compare NaN’s as equal. If True, NaN’s in a will be considered equal to NaN’s in b in the output array.

    Returns

    y:array_like

    Returns a boolean array of where a and b are equal within the given tolerance. If both a and b are scalars, returns a single boolean value.

    See also

    allclose

    Notes

    New in version 1.7.0.

    For finite values, isclose uses the following equation to test whether two floating point values are equivalent.

    absolute(a - b) <= (atol + rtol * absolute(b))

    Unlike the built-in math.isclose, the above equation is not symmetric in a and b – it assumes b is the reference value – so that isclose(a, b) might be different from isclose(b, a). Furthermore, the default value of atol is not zero, and is used to determine what small values should be considered close to zero. The default value is appropriate for expected values of order unity: if the expected values are significantly smaller than one, it can result in false positives. atol should be carefully selected for the use case at hand. A zero value for atol will result in False if either a or b is zero.

    Examples

    1. >>> np.isclose([1e10,1e-7], [1.00001e10,1e-8])
    2. array([ True, False])
    3. >>> np.isclose([1e10,1e-8], [1.00001e10,1e-9])
    4. array([ True, True])
    5. >>> np.isclose([1e10,1e-8], [1.0001e10,1e-9])
    6. array([False, True])
    7. >>> np.isclose([1.0, np.nan], [1.0, np.nan])
    8. array([ True, False])
    9. >>> np.isclose([1.0, np.nan], [1.0, np.nan], equal_nan=True)
    10. array([ True, True])
    11. >>> np.isclose([1e-8, 1e-7], [0.0, 0.0])
    12. array([ True, False])
    13. >>> np.isclose([1e-100, 1e-7], [0.0, 0.0], atol=0.0)
    14. array([False, False])
    15. >>> np.isclose([1e-10, 1e-10], [1e-20, 0.0])
    16. array([ True, True])
    17. >>> np.isclose([1e-10, 1e-10], [1e-20, 0.999999e-10], atol=0.0)
    18. array([False, True])

  • 相关阅读:
    c语言范例实例
    通过 python 生成随机数据,并批量插入到 Amazon DocumentDB (或mongodb) 中
    数字孪生技术在智慧城市应用的推进建议
    【Kafka】单分区单副本增加至多分区多副本
    【gRPC】快速入门
    leetcode刷题日记:205. Isomorphic Strings(同构字符串)
    正点原子嵌入式linux驱动开发——Linux蜂鸣器
    【5年保更新】Python爬虫复盘案例,精彩文案多多多多
    【JavaWeb】Tomcat
    【代码精读】optee_os的启动
  • 原文地址:https://blog.csdn.net/weixin_36670529/article/details/102457192