select_if
здесь не является правильной функцией, более того, прочитайте комментарий @ r2evan's, чтобы понять, почему он на самом деле не работает.
Попробуйте использовать mutate_all
с replace
.
library(tidyverse)
df1 <- df %>% mutate_all(funs(replace(., . > 0 & . < 3, NA)))
То же самое с базой R, вы можете попробовать
df[df > 0 & df < 3] <- NA