I have a table containing filters, such as
> X = data.frame(filter1=c(1,1,1),filter2=c(1,1,0),filter3=c(1,0,0))
> X
filter1 filter2 filter3
1 1 1 1
2 1 1 0
3 1 0 0
I like to select the filters based on conditionals:
> selected_filters = c(1:2)
> X[,paste0("filter",c(selected_filters))]
filter1 filter2
1 1 1
2 1 1
3 1 0
However, if I have only one column selected, the data frame converts into a list
> selected_filters = c(2)
> X[,paste0("filter",c(selected_filters))]
[1] 1 1 0
How to select also only one column keeping the result as a data frame? Desired result would look like
filter2
1 1
2 1
3 0