如果我想排除一些“聚集”的列(Ozone
, Day
, Month
),我可以这样做:
tidyr::gather(airquality, key, value, -Ozone, -Day, -Month)
但是在一个函数中,我不清楚如何做到这一点。这似乎很笨拙,尽管它有效:
my_gather <- function(col_to_compare) {
gather_cols = dplyr::setdiff(c("Ozone", "Solar.R","Wind","Temp"), col_to_compare)
tidyr::gather(airquality, key, value, !! rlang::enquo(gather_cols))
}
my_gather("Ozone")
知道如何以更严格的方式排除列吗?
注意:这是tidyr
0.7.0