Suharto Anggono Suharto Anggono
2012-Nov-21 06:54 UTC
[Rd] Zero-length 'by' in 'aggregate.data.frame'
Use of tapply() with a 0-length INDEX list is made deprecated in R 2.15.2. How about the similar case for 'aggregate.data.frame', i.e. 0-length 'by' list? Is it going to be supported or not? In R 2.15.2, it doesn't work if 'by' does not have names, but works if 'by' has names. If 0-length 'by' does not have names, the code names(by) <- paste("Group", seq_along(by), sep = ".") fails to give names, because the result of paste("Group", seq_along(by), sep = ".") is "Group.", which has length 1 instead of 0.> aggregate(data.frame(x=1:10), list(), length)Error in aggregate.data.frame(data.frame(x = 1:10), list(), length) : 'names' attribute [1] must be the same length as the vector [0]> aggregate(data.frame(x=1:10),+ structure(list(), names=character(0)), length) x 1 10> sessionInfo()R version 2.15.2 (2012-10-26) Platform: i386-w64-mingw32/i386 (32-bit) locale: [1] LC_COLLATE=English_United States.1252 [2] LC_CTYPE=English_United States.1252 [3] LC_MONETARY=English_United States.1252 [4] LC_NUMERIC=C [5] LC_TIME=English_United States.1252 attached base packages: [1] stats graphics grDevices utils datasets methods base