[英]np.linalg.norm and how to deal with machine epsilon
我有这个相当简单的问题。 我想使用以下代码计算 numpy 的欧几里得距离:
a= np.array([1,2,3])
b= np.array([2,3,4])
print((np.linalg.norm(a-b))**2)
这产生2.9999999999999996
,但是,答案应该是3
。 我如何实现这一目标?
谢谢
通常,您可以使用np.isclose来比较浮点值。
您可以使用 round() function
a= np.array([1,2,3])
b= np.array([2,3,4])
print((np.linalg.norm(round(a-b))**2))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.