现在我脑子里有个屁,我不记得如何根据数字的小数点过滤掉数字
假设我的数据帧是-
dic = {'product':['Bread','Milk','Eggs','Water','OJ','Cereal','Coffee',
'Apples','Banana','Muffin'],
'price':[3.89,2.99,4.00,0.69,1.99,2.39,5.00,0.99,0.98,1.50]}
df = pd.DataFrame(dic)
print(df)
输出-
product price
0 Bread 3.89
1 Milk 2.99
2 Eggs 4.00
3 Water 0.69
4 OJ 1.99
5 Cereal 2.39
6 Coffee 5.00
7 Apples 0.99
8 Banana 0.98
9 Muffin 1.50
我只想让价格以.99、.00和.50结尾
我期望的结果是——
product price
1 Milk 2.99
2 Eggs 4.00
4 OJ 1.99
6 Coffee 5.00
7 Apples 0.99
9 Muffin 1.50
应该知道怎么做,只是现在记不起来了
如果这些是简单的货币(美元)金额,您可以将十进制值转换为整数(以避免浮动比较,这可能会导致错误的答案),然后进行
isin
检查:根据我的测试,这是两个中速度更快的一个
另一个带有
np.isclose
的选项:您可以这样做:
输出:
相关问题 更多 >
编程相关推荐