【发布时间】:2019-12-05 14:40:06
【问题描述】:
我正在尝试按时间过滤大约 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, ...) 中的错误:字符串不是标准的明确格式。显然,我在尝试转换时还有其他的等等。尽管到目前为止没有任何效果,但已经通过了几个包。
我们的时间戳是“%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, ...) 中的错误:字符串不是标准的明确格式。 可悲的是,我不知道该怎么做。我以前也从未使用过这种格式。
【问题讨论】:
-
"% 07:00:00"不是有效格式。如果您尝试仅按时间过滤(不考虑日期),您可以使用format提取时间分量,然后提取数字,或者您可以使用lubridate包。 -
所以我不能只过滤列中的特定部分?很高兴知道。格式化时,年、月、日仍然存在还是消失了?尽管日期对于示例而言无关紧要,但我不想就这样删除它们。