我有以下数据框:
actual_credit min_required_credit
0 0.3 0.4
1 0.5 0.2
2 0.4 0.4
3 0.2 0.3
我需要添加一个列,指明实际的“学分”=所需的“学分”。结果将是:
actual_credit min_required_credit result
0 0.3 0.4 False
1 0.5 0.2 True
2 0.4 0.4 True
3 0.1 0.3 False
我正在做以下工作:
df['result'] = abs(df['actual_credit']) >= abs(df['min_required_credit'])
然而,第三行(0.4和0.4)经常导致错误。在包括What is the best way to compare floats for almost-equality in Python?在内的多个地方研究过这个问题之后,我仍然无法让它工作。当两列具有相同的值时,结果为False,这是不正确的。
我正在使用Python3.3
由于浮动比较不精确,您可以} 进行比较,
or
与^{isclose
采用相对和绝对公差参数,因此应执行以下操作:使用
pandas.DataFrame.abs()
而不是内置的abs()
:相关问题 更多 >
编程相关推荐