Outline
SDcols is an useful but tricky method in data.table. The statement of it is hard to remember, so I wrote down some examples, copying and pasting when I need them.
Use lapply with .SDcols
cols <- c('COL1', 'COL2', 'COL3')
main_tb <- main_tb %>%
.[, c(cols):= lapply(.SD, function(x) ifelse(is.na(x), 0, x))
, .SDcols = cols]
Aggregate with .SDcols
cols_by <- c('COL1', 'COL2')
cols_sum <- c('COL3', 'COL4')
dt <- dt %>%
.[, lapply(.SD, sum), by = item_no_col, .SDcols = cols_sum]
Recommended Posts
Learn Python And R In DataCamp. Start Your Data Science Career.