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)

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM