Pretty self-explanatory. MWE:
DT = data.table(a = factor(c('a', 'b'), levels = c('b', 'a')))
split(DT, by = 'a', sorted = TRUE)
# $a
# a
# 1: a
# $b
# a
# 1: b
split(DT, f = DT$a, sorted = TRUE)
# $b
# a
# 1: b
# $a
# a
# 1: a
split.data.frame(DT, f = DT$a)
# $b
# a
# 1: b
# $a
# a
# 1: a
Pretty self-explanatory. MWE: