Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Numpy:将浮点值与阈值进行比较_Python_Numpy_Floating Point - Fatal编程技术网

Python Numpy:将浮点值与阈值进行比较

Python Numpy:将浮点值与阈值进行比较,python,numpy,floating-point,Python,Numpy,Floating Point,我在这里找到了如何比较浮动和相等: 以及其他类似的问题 但我找不到最好的方法来正确比较浮动和阈值(大于或小于) 示例:我们想检查浮点矩阵中的元素是否小于浮点阈值 eps = 0.1 xx = np.array([[1,2,3], [4,5,6], [7,8,9]]) yy = np.array([[1.1,2.1,3.1], [4.1,5.1,6.1], [7.1,8.2,9.3]]) dif = np.absolute(xx - yy) print dif print dif < e

我在这里找到了如何比较浮动和相等:

以及其他类似的问题

但我找不到最好的方法来正确比较浮动和阈值(大于或小于)

示例:我们想检查浮点矩阵中的元素是否小于浮点阈值

eps = 0.1
xx = np.array([[1,2,3], [4,5,6], [7,8,9]])
yy = np.array([[1.1,2.1,3.1], [4.1,5.1,6.1], [7.1,8.2,9.3]])
dif = np.absolute(xx - yy)
print dif
print dif < eps
我找到的唯一解决方案是创建一个矢量化函数,并将矩阵的每个元素与treshold进行比较:首先确定它们不相等,然后与
进行比较。
感谢@MarkRansom。

在大多数实际情况下,由于计算时收集到的小错误,无法进行精确比较

如果你想做正确的数值计算,你必须在计算结果的同时附上一个误差估计值,这是相当乏味的

(有一个名为“flint with a”的库,但我没有使用它,因此无法对此进行担保。它旨在为您的所有结果确定携带误差范围(比估计值更严格)


在任何情况下,您都必须将可能结果的列表从大、等、小更改为更大、可能更大、难以区分、可能更小、更小

在大多数实际情况下,由于您在计算时收集到的误差很小,因此无法进行精确的比较

如果你想做正确的数值计算,你必须在计算结果的同时附上一个误差估计值,这是相当乏味的

(有一个名为“flint with a”的库,但我没有使用它,因此无法对此进行担保。它旨在为您的所有结果确定携带误差范围(比估计值更严格)


在任何情况下,您都必须将可能的结果列表从“更大”、“相等”、“更少”更改为“更大”、“可能更大”、“难以区分”、“可能更少”、“更少”

请记住≤ b等于
而不是a>b

请记住
a≤ b
等于
而不是a>b

请讲清楚一点。你的意思是说你有一个浮点值,比如说
threshold
,你想看看另一个值
x
是否大于该值(或者可能小于该值)?如果x>阈值
有什么问题?这就是你要找的吗?@MarkRansom谢谢。但在这个答案中,我只发现了如何比较相等的浮点数,而不是更大或更小的浮点数。也许我不够注意。一旦你确定它们不相等,那么
有什么问题吗?首先要检查它们是否相等,如果它们不相等,就只使用
。因此,您永远不会比较
0.1<0.1
。请更清楚一点。你的意思是说你有一个浮点值,比如说
threshold
,你想看看另一个值
x
是否大于该值(或者可能小于该值)?如果x>阈值
有什么问题?这就是你要找的吗?@MarkRansom谢谢。但在这个答案中,我只发现了如何比较相等的浮点数,而不是更大或更小的浮点数。也许我不够注意。一旦你确定它们不相等,那么
有什么问题吗?首先要检查它们是否相等,如果它们不相等,就只使用
。所以你永远不会比较
0.1<0.1
[[ 0.1  0.1  0.1]
 [ 0.1  0.1  0.1]
 [ 0.1  0.2  0.3]]
[[False False False]
 [ True  True  True]
 [ True False False]]