Oblicz sumę listy zmiennych według grupy

Mam tabelę danych z jednym kluczem i około 100 wierszami numerycznymi, z których jeden jest ustawiony na klucz. Chciałbym utworzyć nową zmienną zawierającą sumowanie każdego wiersza liczbowego pogrupowanego według klucza.

Na przykład moje dane są teraz

ID Count1 Count2 Count3
1   1      3      0
1   3      3      3
2   1      2      1
3   1      1      2

Chciałbym mieć:

ID Count1 Count2 Count3
1   4      6      3
2   1      2      1
3   1      1      2

Próbowałem tego na wiele sposobów. Wiem, że mogę to zrobić:

Y <- X[, list(Count=sum(Count1), Count2=sum(Count2), Count3=sum(Count3), by = ID]

Mam jednak setki zmiennych i otrzymuję ich nazwy tylko na liście. Jak mam sobie z tym poradzić?

Bardzo dziękuję za Twoją pomoc.

Oto kod do generowania danych testowych:

ID <-c(rep(210, 9), rep(3917,6))
Count1 <- c(1,1,0,1,3,1,4,1,1,1,1,1,1,0,1)
Count2 <- c(1,0,0,1,0,1,0,1,1,1,1,1,1,0,1)
Count3 <- c(1,0,0,1,0,1,0,1,1,1,1,1,1,0,1)
x <- data.table(ID, Count1, Count2, Count3)
setkey(x, ID)

questionAnswers(2)

yourAnswerToTheQuestion