Package implementing additional infix operators for R.
Implemented operators work with 4 different value types: sets, intervals, regular expressions, and counts.
And provide 3 distinct functionalities: detection, subsetting, and replacement.

For more examples please see the vignette.
For a complete list of available operators consult the tables below.
All operators have the same form composed of two distinct parts: %<operation><type>%.
[operation] specifies the performed functionality and can be one of in, out, [in, [out.[type] specifies the type of operation and can be one of {}, [], (), [), (], ~, ~p, ~f, #.| Form | Description | Call | 
|---|---|---|
%in{}% | 
which elements are inside a set | x %in{}% set | 
%in[]% | 
which elements are inside a closed interval | x %in[]% interval | 
%in()% | 
which elements are inside an open interval | x %in()% interval | 
%in[)% | 
which elements are inside an interval open on the right | x %in[)% interval | 
%in(]% | 
which elements are inside an interval open on the left | x %in(]% interval | 
%in~% | 
which elements match a regular expression | x %in~% pattern | 
%in~p% | 
which elements match a regular perl expression | x %in~p% pattern | 
%in~f% | 
which elements match a regular fixed expression | x %in~f% pattern | 
%in#% | 
which elements occur a specified number of times | x %in#% count | 
%out% | 
which elements are outside a set (same as ! x %in% y) | x %out% set | 
%out{}% | 
which elements are outside a set | x %out{}% set | 
%out[]% | 
which elements are outside a closed interval | x %out[]% interval | 
%out()% | 
which elements are outside an open interval | x %out()% interval | 
%out[)% | 
which elements are outside an interval open on the right | x %out[)% interval | 
%out(]% | 
which elements are outside an interval open on the left | x %out(]% interval | 
%out~% | 
which elements do not match a regular expression | x %out~% pattern | 
%out~p% | 
which elements do not match a regular perl expression | x %out~p% pattern | 
%out~f% | 
which elements do not match a regular fixed expression | x %out~f% pattern | 
%out#% | 
which elements occur other than a specified number of times | x %out#% count | 
| Form | Description | Call | 
|---|---|---|
%[==% | 
select elements equal to the provided value | x %[==% element | 
%[!=% | 
select elements not equal to the provided value | x %[!=% element | 
%[>% | 
select elements greater than the provided value | x %[>% number | 
%[<% | 
select elements lower than the provided value | x %[<% number | 
%[>=% | 
select elements greater or equal to the provided value | x %[>=% number | 
%[<=% | 
select elements lower or equal to the provided value | x %[<=% number | 
%[in% | 
select elements inside a set | x %[in% set | 
%[in{}% | 
select elements inside a set | x %[in{}% set | 
%[in[]% | 
select elements inside a closed interval | x %[in[]% interval | 
%[in()% | 
select elements inside an open interval | x %[in()% interval | 
%[in[)% | 
select elements inside an interval open on the right | x %[in[)% interval | 
%[in(]% | 
select elements inside an interval open on the left | x %[in(]% interval | 
%[in~% | 
select elements matching a regular expression | x %[in~% pattern | 
%[in~p% | 
select elements matching a regular perl expression | x %[in~p% pattern | 
%[in~f% | 
select elements matching a regular fixed expression | x %[in~f% pattern | 
%[in#% | 
select elements that occur a specified number of times | x %[in#% count | 
%[out% | 
select elements outside a set | x %[out%  set | 
%[out{}% | 
select elements outside a set | x %[out{}%  set | 
%[out[]% | 
select elements outside a closed interval | x %[out[]% interval | 
%[out()% | 
select elements outside an open interval | x %[out()% interval | 
%[out[)% | 
select elements outside an interval open on the right | x %[out[)% interval | 
%[out(]% | 
select elements outside an interval open on the left | x %[out(]% interval | 
%[out~% | 
select elements not matching a regular expression | x %[out~% pattern | 
%[out~p% | 
select elements not matching a regular perl expression | x %[out~p% pattern | 
%[out~f% | 
select elements not matching a regular fixed expression | x %[out~f% pattern | 
%[out#% | 
select elements that occur other than specified number of times | x %[out% count | 
| Form | Description | Call | 
|---|---|---|
==<- | 
change elements equal to the provided value | x == element <- value | 
!=<- | 
change elements not equal to the provided value | x != element <- value | 
><- | 
change elements greater than the provided value | x > number <- value | 
<<- | 
change elements lower than the provided value | x < number <- value | 
>=<- | 
change elements greater or equal to the provided value | x >= number <- value | 
<=<- | 
change elements lower or equal to the provided value | x <= number <- value | 
%in%<- | 
change elements inside a set | x %in% set <- value | 
%in{}%<- | 
change elements inside a set | x %in{}% set <- value | 
%in[]%<- | 
change elements inside a closed interval | x %in[]% interval <- value | 
%in()%<- | 
change elements inside an open interval | x %in()% interval <- value | 
%in[)%<- | 
change elements inside an interval open on the right | x %in[)% interval <- value | 
%in(]%<- | 
change elements inside an interval open on the left | x %in(]% interval <- value | 
%in~%<- | 
change elements matching a regular expression | x %in~% pattern <- value | 
%in~p%<- | 
change elements matching a regular perl expression | x %in~p% pattern <- value | 
%in~f%<- | 
change elements matching a regular fixed expression | x %in~f% pattern <- value | 
%in#%<- | 
change elements that occur specified number of times | x %in#% count <- value | 
%out%<- | 
change elements outside a set | x %out% set <- value | 
%out{}%<- | 
change elements outside a set | x %out{}% set <- value | 
%out[]%<- | 
change elements outside a closed interval | x %out[]% interval <- value | 
%out()%<- | 
change elements outside an open interval | x %out()% interval <- value | 
%out[)%<- | 
change elements outside an interval open on the right | x %out[)% interval <- value | 
%out(]%<- | 
change elements outside an interval open on the left | x %out(]% interval <- value | 
%out~%<- | 
change elements not matching a regular expression | x %out~% pattern <- value | 
%out~p%<- | 
change elements not matching a regular perl expression | x %out~p% pattern <- value | 
%out~f%<- | 
change elements not matching a regular fixed expression | x %out~f% pattern <- value | 
%out#%<- | 
change elements that occur other than specified number of times | x %out#% count <- value | 
To give an assignment counterpart to < we had to overload the <<- operator, which explains the message when attaching the package. This doesn’t affect the behavior of the <<- assignments.
Detection operators should be seen as an extension of the standard infix operators implemented in R (i.e. ==, >, etc). For this reason the implemented operators differ from standard %in% and behave more like == on data.frames and objects with NA values.
Subsetting and replacement operators are wrappers around detection operators.
Subsetting: x[ x %in{}% set].
Replacement: replace(x, x %in{}% set, value).
Other similar packages you might be interested in.