Pandas 中对特定时间(时间段)范围进行 筛选

本来是挺简单的事情, pandas 有自带函数 between_time 但是 需要将 日期列设置为index 才可以使用

但并不想添加这个index, 于是就用了 这个 不那么“Pythonic” 的方法了

  1.先根据datetime 创建一个 时间列

  df['时间'] = self.df['日期时间'].dt.time

  2.再对时间进行筛选就可以了, 比如: 筛选 时间 是 22:00:00 到 09:00:00的数据

  df['早夜时段'] = self.df['时间'].apply(lambda x: 1 if x >=datetime.time(22,00,00) or x <=datetime.time(9,00,00) else 0)

 

posted @   dontbealarmedimwithy  阅读(6221)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示