Thank you. On Mon, Aug 6, 2012 at 10:05 AM, Matthew Dowle <[email protected]>wrote:
> > Yes this is a bug, already reported: #2162 "Internal error with > simultanous join (with missing groups) and group by in 1.8.2" > > > https://r-forge.r-project.org/tracker/index.php?func=detail&aid=2162&group_id=240&atid=975 > > Will fix and add tests. Thanks for reporting. Have added link to your > example to the report. > > Matthew > > > I recently updated from data.table 1.7.1 to 1.8.2 and found that my old > > code using data.table > > no longer works. I'm not sure if this is being caused by a bug in the > new > > version of data.table > > or an intentional change to the way data.table works. > > > > In 1.7.1, I could do the following: > >> DT <- data.table(x=rep(c("a","b","c"),each=3), y=c(1,3,6), v=1:9) > >> setkey(DT, x) > >> DT[J(c("a", "b", "d")), sum(v), by=x] > > x V1 > > [1,] a 6 > > [2,] b 15 > > [3,] <NA> NA > > > > > > In 1.8.2, however, I get an error message: > >> DT <- data.table(x=rep(c("a","b","c"),each=3), y=c(1,3,6), v=1:9) > >> setkey(DT, x) > >> DT[J(c("a", "b", "d")), sum(v), by=x] > > Error in if (any(irows < 1L | irows > nrow(x))) stop("Internal error: > some > > irows<1 or >nrow(x)") : > > missing value where TRUE/FALSE needed > > > > > > Looking through the NEWS file I don't see any mention of this change > (It's > > possible that I just missed it). > > If this an intentional change, I would ask that you consider reverting > it. > > It seems inconsistent that > > DT[J(c("a", "b", "d"))] adds a new row to the table, but DT[J(c("a", "b", > > "d")), sum(v), by=x] > > causes an error. > > > > Personally I think the following makes the most sense. But just > reverting > > back to what it did in 1.7.1 > > seems better than having an error. > >> DT[J(c("a", "b", "d")), sum(v), by=x] > > x V1 > > [1,] a 6 > > [2,] b 15 > > [3,] d NA > > > > > > Thank you, > > Mike > > _______________________________________________ > > datatable-help mailing list > > [email protected] > > > https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/datatable-help > > >
_______________________________________________ datatable-help mailing list [email protected] https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/datatable-help
