繁体   English   中英

熊猫数据框比较和浮点精度

[英]Pandas Dataframe Comparison and Floating Point Precision

我正在寻找比较应该相同的两个数据框。 但是,由于浮点精度,我被告知值不匹配。 我在下面创建了一个示例对其进行仿真。 如何获得正确的结果,以便最终比较数据帧对两个单元格都返回true?

a = pd.DataFrame({'A':[100,97.35000000001]})
b = pd.DataFrame({'A':[100,97.34999999999]})
print a

   A  
0  100.00  
1   97.35  

print b

   A  
0  100.00  
1   97.35  

print (a == b)

   A  
0  True  
1  False  

确定,您可以为此使用np.isclose

In [250]:
np.isclose(a,b)

Out[250]:
array([[ True],
       [ True]], dtype=bool)

np.isclose具有相对公差和绝对公差。 它们分别具有默认值: rtol=1e-05atol=1e-08

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM