如何将二元运算符存储在变量中?

How can one store a binary operator in a variable?

我对 %Something% 运算符的含义感到很困惑。

如何在变量中存储二元运算符?

类似...

binary_operator = store.binary(%in%)

c(3,9,4,1,7) binary_operator c(1:5) # would behave alike "c(3,9,4,1,7) %in% c(1:5)"

或类似

library(foreach)
binary_operator = expression(%do%) # or expression(%dopar%)
...
...
foreach (i=1:6) binary_operator { # would behave alike "foreach (i=1:6) %do% ..."
   ...
   ...
}

如果您想定义自己的中缀运算符,必须%开头和结尾。这样解析器就知道如何正确地将参数传递给函数,因为这不是解析代码的通常方式。此外,使用反引号转义变量名称中的百分号。

`%binary_operator%` <- `%in%`
c(3,9,4,1,7) %binary_operator% c(1:5)