# Load packages
library(data.table)
# Generate data
dt <- data.table(sapply(setNames(letters, letters), function(x) {assign(x, rnorm(10))}))
dt2 <- copy(dt)
# Drop variables by name
names(dt)
drop_columns(dt, letters[2L:25L])
names(dt)
# Drop variables by column position
names(dt2)
drop_columns(dt2, seq(2, 25))
names(dt2)
# Return from non-data.table input
df <- data.frame(sapply(setNames(letters, letters), function(x) {assign(x, rnorm(10))}))
drop_columns(df, letters[2L:25L])
Run the code above in your browser using DataLab