Hi Arun and sorry for my insistence. If I'm right, wraping the entire
expression we can identify that there is one missign data in $visit for id=2:
> DT[, print(list(start,
> visit=as.Date(c(paste0(year(start[1]):(year(end[1])-1),"-12-31"))),end)),
> by=id]
[[1]] # Data for subject id=2[1] "2007-01-01" "2007-01-01" "2007-01-01"
$visit[1] "2007-12-31" "2008-12-31” ########## <~~~ here’s the issue that
results in warning. [[3]][1] "2009-05-01" "2009-05-01" "2009-05-01"
But precisely, the output I desired for id=2 consists on keeping rows of only
those "complete" observations for columns start, visit and end,.I only want to
keep by rows the first and second columns, because the following 31 December
would be 2009-12-31, which is older than the corresponding end=2009-05-01.
That is: id start visit end
1: 2 2007-01-01 2007-12-31 2009-05-01
2: 2 2007-01-01 2008-12-31 2009-05-01
Trying to follow your suggestions, I've written: > DT[unique(DT),
{N = as.Date(c(paste0(year(start[1]):(year(end[1])-1),"-12-31")))
.(start, visit = visit[N], end)
}, by=id] But it returns me an error message. Can you help me to find a way
out of this mess?
_______________________________________________
datatable-help mailing list
[email protected]
https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/datatable-help