python - 在 Panda DataFrame 中返回十进制数的倍数
问题描述
我有以下数据框:
import pandas as pd, numpy as np
df = pd.DataFrame({'Instrument':['BBB','BBB','BBB','CCC','CCC'],
'Date':['2020-01-02','2020-01-02','2020-01-02','2020-01-03','2020-01-03'],
'Time':['09:47:07.136','09:57:13.757','09:58:26.841','09:28:31.161','09:28:43.562'],
'Price': [1.80,1.855,1.598,30.010,25.985]})
我想过滤掉那些不是某个数字(刻度大小)倍数的价格值,这意味着,对于价格范围在 0.10 美元到 2.00 美元之间,倍数(刻度大小)是 0.005 美元。对于大于或等于 2.00 美元的价格,倍数(刻度大小)为 0.01 美元。
因此,过滤后的理想df将是:
import pandas as pd, numpy as np
df = pd.DataFrame({'Instrument':['BBB','BBB','CCC'],
'Date':['2020-01-02','2020-01-02','2020-01-03'],
'Time':['09:47:07.136','09:57:13.757','09:28:31.161'],
'Price': [1.80,1.855,30.010]})
谢谢!
解决方案
你也可以试试这个
newdf = df.loc[(df["Price"].between(0.1,2)) & (df["Price"]/0.005%1 == 0)]
推荐阅读
- javascript - 计算数组内对象的迭代次数
- android - 如果照片是用安卓的相机应用拍摄的,为什么我不能在我的安卓应用中从画廊上传照片?
- html - 如何正确设置 html 和 body 标签高度以填充所有可用空间
- swift - 将 ViewModel 属性设置为私有
- ruby-on-rails - 如何使用 StimulusJS 从关联的 Ruby on Rails 模型中获取数据?
- django-rest-framework - Django rest 框架 XLSX 渲染器 + Apiview
- multidimensional-array - Octave:如何为现有单元格数组分配正确的维度以避免“错误:=:不一致的参数(op1 是 2x2x2,op2 是 2x2x2)”?
- java - 如何修复错误:java.sql.SQLException: Cannot create PoolableConnectionFactory (Could not create connection to database server.)?
- xcode - 在 VStack 内部的 HStack 内的 SwiftUI 文本字段中,在 macOS 中生成运行时错误
- r - 读取多个文件,但跟踪哪个文件是 R 中的哪个数据框