r - 过滤 POSIXct 时间戳
问题描述
我正在尝试按时间过滤大约 50 个条目的 df。
library(dplyr)
library(readr)
rush_hour <- filter(travel_times$`Actual departure` >= as.POSIXct("% 07:00:00") & travel_times$`Actual departure` <= as.POSIXct("% 18:00:00"))
但是,我大多 在 as.POSIXlt.character(x, tz, ...) 中得到 Error : character string is not in a standard unambiguous format。显然,我在尝试转换时还有其他的等等。尽管到目前为止没有任何效果,但已经通过了几个包。
我们的时间戳是“%Y-%M-%D %H:%M%:S”,但根据我的任务,我缺乏实际过滤它们的知识。
我很感激我能得到的任何帮助。我已经很确定这将是一个非常简单的错误,只要对背后的整个过程有更深入的了解,就可以轻松避免..
更新:尝试过类似的东西
filter(travel_times$`Actual departure` >= as.POSIXct("% 07:00:00", tz="UTC") & travel_times$`Actual departure` <= as.POSIXct("% 18:00:00"))
我得到错误:as.POSIXlt.character(x, tz, ...) 中的错误:字符串不是标准的明确格式。可悲的是,我不知道该怎么做。我以前也从未使用过这种格式。
解决方案
我终于想出了如何过滤任务所需的特定时间段。我通过使用:
hms <- format(as.POSIXct(travel_times$`Actual departure`), "%H:%M:%S")
hms
rush_hour <- travel_times[hms >= "07:00:00" & hms <= "18:00:00",]
off_peak <- travel_times[hms < "07:00:00" | hms > "18:00:00",]
在stackoverflow上发布的另一个问题中找到了这个答案,但无法再次找到该页面。希望这可以帮助遇到类似问题的每个人。
推荐阅读
- apache-spark - 编写数据帧时从 Spark 到数据库的连接有多少?
- python - 用户输入问题
- visual-studio-code - 在VScode中,如何在launch.json中添加带有$的参数
- pyodbc - 如何使用 pyodbc 接口连接计算表
- vue.js - 带有 Vue 的 Apache ECharts 不显示工具提示
- html - 我的 CSS 无法识别滚动捕捉命令
- python - 带有条件的列表列表
- amazon-web-services - 允许基于 EC2 角色的 S3 存储桶操作
- msal - 是否可以只保护特定的 API 路由?
- node.js - Node Express 快速 CSV 下载到客户端