1
我想知道如何矢量化這段代碼。如何獲得不重疊的日期?
dates = list(as.Date(c("2000-02-08", "2000-02-11")),
as.Date(c("2000-03-02", "2000-03-07")),
as.Date(c("2000-03-02", "2000-03-07")),
as.Date(c("2000-03-03", "2000-03-07")),
as.Date(c("2000-03-16", "2000-03-30")),
as.Date(c("2000-03-16")))
i = 2
while(i <= length(dates))
{
if(dates[[i]][1] < dates[[i-1]][2])
{
dates[[i]] = NULL
i = i-1
}
i = i+1
}
我想只得到那些不相交的日期。
Date1 = as.Date(c("2000-03-02", "2000-03-07"))
Date2 = as.Date(c("2000-03-03", "2000-03-07"))
例如,如果Date2包含在Date1範圍內,則我們刪除Date2。
你可以看看'data.table'包中的'foverlaps'。 – Tensibai
你輸出的例子聽起來不真實,日期確實相交(03之間,02和07 ..) – Tensibai