pandas - 熊猫从时间开始选择行,而不是日期时间
问题描述
给定一个数据框:
df = pd.DataFrame({'a': [10, 20, 40, 50,60,70,80,100]},index = pd.DatetimeIndex(['2018-02-27 09:01:00','2018-02-27 09:02:00','2018-02-27 09:04:00','2018-02-27 09:05:00','2018-03-27 09:01:00','2018-03-27 09:02:00','2018-03-27 09:03:00','2018-03-27 09:05:00']))
我希望得到截至 09:04 的值,在这种情况下,它应该返回 2 行,'a' 值为 40 和 80。看来 pandas 只需要 datetime 作为 asof() 的输入,我必须做一些预先- 处理自己创建所有过滤器。我想知道 pandas 中是否已经有这样的功能,像 09:04 这样的输入就足够了,或者其他简单的方法来获得结果。
编辑:对不起,我在开始时输入了错误的 df - 第二天不应该是 09:04,因此需要 asof()。
解决方案
我在用strftime
df[df.index.strftime('%H:%M')=='09:04']
Out[652]:
a
2018-02-27 09:04:00 40
2018-03-27 09:04:00 90
推荐阅读
- c# - ajax 调用首先失败 2 次,然后从第 3 次返回成功
- c# - 我的 ASP 控件 ID 没有出现在页面后面的代码中 (C#) 如何解决这个错误?
- ionic-framework - 如何在ionic3中使用firebase登录谷歌后重定向到主页
- kubernetes - 空地址 kubernetes 入口
- javascript - JavaScript - 为什么可以在 ElectronJs 的浏览器脚本标签中使用 require 函数?
- java - 如果字符串的长度更长,如何添加空格
- mysql - 如何对数据进行分组?
- html - 反正有没有专门针对css文本中的数字?
- java - 正则表达式查找不同的数据库字段
- android - android P 中的优先级存储桶究竟会如何影响我的应用程序中的后台作业/任务?