如何基于每日特定时间删除pandas dataframe中的指定行
解决方案
你可以按以下步骤实现需求,全程仅需要修改你要保留的时段列表即可:
步骤1:确认索引为datetime类型
如果你的DataFrame索引还不是datetime格式,先执行转换,pandas会自动兼容你带时区后缀的时间格式:
import pandas as pd df.index = pd.to_datetime(df.index)
步骤2:按指定时段过滤
直接提取索引的时分部分匹配你要保留的时段即可,示例代码如下:
# 在此处填写你需要保留的hh:mm格式时段,可随意增减调整 keep_time_list = ['06:30', '10:30'] # 提取每条数据索引的时分部分 time_part = df.index.strftime('%H:%M') # 过滤得到仅保留指定时段的新DataFrame filtered_df = df[time_part.isin(keep_time_list)]
结果验证
执行print(filtered_df.index)即可查看过滤后的时间索引是否符合预期。
内容的提问来源于stack exchange,提问作者PeterJHill
相关产品推荐
相关产品推荐

