Ответ 1
В публикации, на которую вы ссылаетесь, рассказывается, как применить один метод агрегирования к нескольким столбцам. Если вы хотите применить разные методы агрегирования к разным столбцам, вы можете сделать:
dat[, .(count = .N, var = sum(VAR)), by = MNTH]
это приводит к:
MNTH count var 1: 201501 4 2 2: 201502 3 0 3: 201503 5 2 4: 201504 4 2
Вы также можете добавить эти значения в существующий набор данных, обновив свой набор данных по ссылке:
dat[, ':=' (count = .N, var = sum(VAR)), by = MNTH]
это приводит к:
> dat MNTH VAR count var 1: 201501 1 4 2 2: 201501 1 4 2 3: 201501 0 4 2 4: 201501 0 4 2 5: 201502 0 3 0 6: 201502 0 3 0 7: 201502 0 3 0 8: 201503 0 5 2 9: 201503 0 5 2 10: 201503 1 5 2 11: 201503 1 5 2 12: 201503 0 5 2 13: 201504 1 4 2 14: 201504 0 4 2 15: 201504 1 4 2 16: 201504 0 4 2
Подробнее о том, как использовать синтаксис data.table, см. В руководствах по началу работы на вики-сайте GitHub.