我有 3 个数据帧:
# build first data.frame
Date1 = seq(from = as.POSIXct("1991-01-01 00:00"),
to = as.POSIXct("1991-12-31 23:00"), by = 60)
Dat1 <- data.frame(DateTime = Date1,
x1 = rnorm(length(Date1)))
# build second data.frame
Date2 <- seq(from = as.POSIXct("1991-03-01 03:30"),
to = as.POSIXct("1991-11-23 22:00"), by = 60)
Dat2 <- data.frame(DateTime = Date2,
x1 = rnorm(length(Date2)))
# build third data.frame
Date3 <- seq(from = as.POSIXct("1991-02-08 01:30"),
to = as.POSIXct("1991-08-23 11:00"), by = 60)
Dat3Matrix <- matrix(data = rnorm(length(Date3)*3), ncol = 3)
Dat3 <- data.frame(DateTime = Date3,
x1 = Dat3Matrix)
我现在正试图从三个 data.frames 中删除不包含在其他数据帧中的时间段(如果这有意义的话)。最终,我的目标是让三个数据框具有相同的开始和结束日期。我该怎么做呢?
我在想一些事情:
newDat1 <- subset(Dat1,Dat1$DateTime %in% Dat2$DateTime)
但我一直在寻找一种方法将其应用于任意数量的数据帧,例如,如果我有 10 个数据帧,该方法仍然有效。我生成的函数应该对所有数据帧进行子集化,并以相同的开始和结束日期返回它们。
所以,我想生成一个函数,它接受任意数量的数据帧,然后返回具有相同开始和结束日期的相同数据帧,这可能吗?