Я собираю R/data.table
(v1.12.2), и мне нужно использовать переменную в качестве имени агрегированного столбца. Например:
library(data.table)
DT <- data.table(x= 1:5, y= c('A', 'A', 'B', 'B', 'B'))
aggname <- 'max_x' ## 'max_x' should be the name of the aggregated column
DT2 <- DT[, list(aggname= max(x)), by= y]
DT2
y aggname <- This should be 'max_x' not 'aggname'!
1: A 2
2: B 5
Я могу впоследствии переименовать столбец (столбцы) примерно так:
setnames(DT2, 'aggname', aggname)
DT2
y max_x
1: A 2
2: B 5
Но я должен был бы проверить, что строка «aggname» не создает дубликатов имена сначала. Есть ли лучший способ сделать это?