Операторы вида %some_text%
называются «бинарными операторами», потому что они работают с двумя аргументами.%%
, оператор по модулю, принимает остаток от деления двух чисел: 5%%2 = 1
.%in%
, оператор сопоставления, сравнивает один вектор значений с другим.Вы можете определить свои собственные двоичные операторы, определив функции двух переменных, как показано ниже:
fun1 <- function(x1, x2) { x1 + x2 - 1 }
fun1(2, 3)
# [1] 4
'%fun2' <- function(x1, x2) { x1 + x2 - 1 }
2 %fun2% 3
# [1] 4
Обратите внимание, что кавычки вокруг определения %fun2%
необходимы для экранирования специальных символов %
.
См. Этот старый ответ для более полного обзора: https://stackoverflow.com/a/25184220/11407644.