一些示例数据.....
library(xts)
ref <- data.frame(Date = c("2/1/2000"))
frame <- read.table(text = " x Date Time
a 1/1/2000 5:00
a 1/1/2000 18:00
a 2/1/2000 7:00",
stringsAsFactors = FALSE,
header = TRUE
)
ref$Date <- as.POSIXct(ref$Date, format = "%d/%m/%Y")
frame$datetime <- paste(frame $Date,frame $Time, sep = " ")
frame$datetime <- as.POSIXct(frame $datetime, format = "%d/%m/%Y %H:%M")
frame <- xts(frame[, 1], order.by= frame [, 4] )
我可以在框架中获得与使用..匹配的所有日期。
> frame[ paste0(":", ref$Date) ]
[,1]
2000-01-02 07:00:00 "a" ]
以及之前的所有日子,包括使用
> frame[ paste0("::", ref$Date) ]
[,1]
2000-01-01 05:00:00 "a"
2000-01-01 18:00:00 "a"
2000-01-02 07:00:00 "a"
但如果我只是想要我不能做的日子:
> frame[ !(paste0(ref$Date, "::")) ]
Error in !(paste0(ref$Date, "::")) : invalid argument type
问题
xts
的情况下使用POSIXct来实现这一目标?答案 0 :(得分:0)
我拥有的最佳解决方案是:
frame[ paste0("::", ref$Date - 24*60*60) ]