【发布时间】:2012-08-04 21:56:20
【问题描述】:
我有一个 data.frame 包含一堆 POSIXct 日期:
df <- data.frame(dte=as.POSIXct(c("2001-02-03 14:30:00",
"2001-02-04 9:30:00", "2001-02-05 10:30:00")), a=1:3)
我想提取df 中时间部分大于上午 9:15 且小于下午 5:25 的部分。我可以分别提取小时和分钟的组成部分并进行比较,但我认为可能有一种更优雅的方法。谁能给个建议?
我目前的方法是:
df <- subset(df,
(as.numeric(format(dte, "%H")) > 9 & as.numeric(format(dte, "%M")) > 15) |
(as.numeric(format(dte, "%H")) < 17 & as.numeric(format(dte, "%M")) < 25))
【问题讨论】:
标签: r date datetime posix posixct