Seleccione múltiples rangos de columnas usando los nombres de columna en data.table

Digamos que tengo una tabla de datos,

dt = data.table(matrix(1:50, nrow = 5));
colnames(dt) = letters[1:10];

> dt
   a  b  c  d  e  f  g  h  i  j
1: 1  6 11 16 21 26 31 36 41 46
2: 2  7 12 17 22 27 32 37 42 47
3: 3  8 13 18 23 28 33 38 43 48
4: 4  9 14 19 24 29 34 39 44 49
5: 5 10 15 20 25 30 35 40 45 50

Quiero seleccionar varios rangos discontinuos de columnas como:a, c:d, f:h yj. Esto se puede hacer fácilmente a través de dplyr's select():

dt %>% select(a, c:d, f:h, j)

Estoy buscando undata.table forma de lograr lo mismo.

hora mismo, puedo seleccionar columnas individualmente en cualquier orden:dt[ , .(a, c)] o dando soloun secuencia de nombres de columna en el formulariostartcol:endcol:

dt[ , c:f]

Sin embargo, no puedo combinar los dos métodos anteriores para seleccionarvarioa columna @ se extiende en una sola toma en.SDcols, como hice endplyr::select

Respuestas a la pregunta(2)

Su respuesta a la pregunta