This is a useful means of using vector inputs in filters for dplyr:
Function_Name <- lazyeval::interp(~Function(a), a = as.name(VectorInput))
df %>%
filter_(Function_Name)
This applies the Function on the VectorInput to a filter.
E.g., to get complete cases for a vector, use:
LazyCompleteCases <- lazyeval::interp(~complete.cases(a), a = as.name(VectorInput))
LazyNonZero <- lazyeval::interp(~a != 0, a = as.name(VectorInput))
LazyQuantileTrim <- lazyeval::interp(~ a < quantile(a,probs = (1 - Filter), na.rm = TRUE), a = as.name(VectorInput))
Lazy
df %>%
filter_(LazyCompleteCases)