根据条件删除行
我只想保留时间在同年 7 月 4 日到 5 月 24 日之间的行,因此我使用此代码:
def fix_time(data):
12 data['timestamp'] = pd.to_datetime(data['timestamp'], format="%d-%m-%Y %H:%M:%S")
---> 13 indexNames = data[ (data['timestamp'] < '24-05-2021 00:00:00') & (data['timestamp'] > '05-07-2021 00:00:00') ].index
14 data.drop(indexNames , inplace=True)
15 return data
但它无法按我想要的方式工作:当我使用 data[ 'timestamp'].max()
我得到 2021-09-30
这不正确。
I want to keep only the rows in which the time is between the July 4 and May 24 of the same year, so I'm using this code :
def fix_time(data):
12 data['timestamp'] = pd.to_datetime(data['timestamp'], format="%d-%m-%Y %H:%M:%S")
---> 13 indexNames = data[ (data['timestamp'] < '24-05-2021 00:00:00') & (data['timestamp'] > '05-07-2021 00:00:00') ].index
14 data.drop(indexNames , inplace=True)
15 return data
But it doesn't work as I wanted: when I use data['timestamp'].max()
I get 2021-09-30
and that's not be correct.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
Between
对此效果更好:另外,请注意,在比较 pandas 中的日期时必须使用日期的 ISO 格式,即,您必须编写
2021-05 -24 00:00:00
(yyyy-mm-dd) 而不是24-05-2021 00:00:00
(年-月-日)。between
works better for this:Also, note that you must use the ISO format of dates when comparing dates in pandas, i.e., you have to write
2021-05-24 00:00:00
(yyyy-mm-dd) instead of24-05-2021 00:00:00
(dd-mm-yyyy).