How to pass the column name in a function similar to the topic here , but using the dplyr and filter() chain along with %in% .
require(dplyr) set.seed(8) df <- data.frame( A=sample(c(1:3), 10, replace=T), B=sample(c(1:3), 10, replace=T))
If you want to get rows where column A is 1 or 2, I can do:
df %>% filter(A %in% c(1,2))
I get:
AB 1 2 3 2 1 2 3 1 3 4 2 1 5 1 1 6 1 3
Now, how can I put this in a function where you can specify a column, this does not work:
fun1 <- function(x, column, n){ res <- x %>% filter(column %in% n) return(res) } fun1(df, A, c(1,2))
source share