我有兩個數據框x和y,它們包含ids和日期的列。按ID和重疊日期範圍加入數據框
id.x <- c(1, 2, 4, 5, 7, 8, 10)
date.x <- as.Date(c("2015-01-01", "2015-01-02", "2015-01-21", "2015-01-13", "2015-01-29", "2015-01-01", "2015-01-03"),format = "%Y-%m-%d")
x <- data.frame(id.x, date.x)
id.y <- c(1, 2, 3, 6, 7, 8, 9)
date.y <- as.Date(c("2015-01-03", "2015-01-29", "2015-01-22", "2015-01-13", "2015-01-29", "2014-12-31", "2015-01-03"), format = "%Y-%m-%d")
y <- data.frame(id.y, date.y)
我想通過匹配ID和閹date.y將它們加入到一個新的數據幀Z的內側date.x + 3天,例如發生在date.y =「2015-01-03」上發生事件「y」,事件x在date.x =「2015-01-01」的3天內發生了事件「y」。
請停止使用'cbind'來創建data.frames ..有一個data.frame函數可用於此。 – Arun
@阿倫注意。如果其他人對cbind.data.frame()和data.frame()之間的區別感到好奇,可以很好地總結[here](https://docs.tibco.com/pub/enterprise-runtime- for-R/1.5.0_may_2013/TERR_1.5.0_LanguageRef/base/cbind.data.frame.html) – user6571411
在調用data.frame()時使用'check.names = FALSE'(以獲得' cbind.data.frame'),這似乎是唯一的默認差異。 – Arun