Подтвердить что ты не робот

Установка имени столбца в операции "group by" с помощью data.table

Я являюсь новым пользователем пакета data.table в Р. Я пытаюсь дать имя новому столбцу, созданному командой "group by"

> DT = data.table(x=rep(c("a","b"),c(2,3)),y=1:5) 
> DT
x y
1: a 1
2: a 2
3: b 3
4: b 4
5: b 5
> DT[,{z=sum(y);z+3},by=x]
x V1
1: a 6
2: b 15
  • Я хотел бы назвать столбец V1 (по умолчанию) напрямую (не используя имена кодов), возможно ли это?
  • Кроме того, возможно ли выполнить одну группу по операциям в одной команде, что приведет к чему-то вроде:

       x V1 V2
    1: a 6  something
    2: b 15 something
    

Спасибо

4b9b3361

Ответ 1

DT[,list(z=sum(y)+3,a=mean(y*z)),by=x]
   x  z  a
1: a  6  9
2: b 15 60

Поскольку вы новичок в data.table, я рекомендую вам также изучить страницу справки функции setnames, а также ?data.table и data.table виньетки.