Если вы используете magrittr
, вы можете использовать
combinations(5,2) %>% .[.[,1]>1,]
, что избавляет от необходимости пересчитывать дорогой combinations
расчет дважды.
Но зачем так усердно работать, чтобы избежать переменного ? В итоге вы удваиваете используемую память и вычисляете время. Вы тоже против написания функции? Почему бы не
colFilter <- function(x, col, fun) x[fun(x[,col]),]
И тогда вы можете сделать
colFilter(combinations(5,2), 1, function(x) x>1)
, который был бы гораздо более эффективным.
В противном случае функция трубопровода была бы
* 1017. *
Это позволяет вам написать выражение, в котором значение, на которое вы передаете, может указываться .
в выражении, которое вы будете sh оценивать.
withX(combinations(5,2), .[.[,1]>1,])