1
一些示例数据.....子集XTS直到但不包括子集日期或POSIXct
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来完成此操作?
可以使用'head'具有负'N':'头(帧[paste0( “/”,参考$日期)], - 1)' – GSee
谢谢GSee,但我通常可能会在同一天有很多比赛,我不一定知道如何设置负数的'n'。虽然我想我可以从'nrow(frame [paste0(“:”,ref $ Date)])''得到这个 – user1320502