Syntax {base} | R Documentation |

Outlines **R** syntax and gives the precedence of operators.

The following unary and binary operators are defined. They are listed in precedence groups, from highest to lowest.

`:: :::` | access variables in a namespace |

`$ @` | component / slot extraction |

`[ [[` | indexing |

`^` | exponentiation (right to left) |

`- +` | unary minus and plus |

`:` | sequence operator |

`%any%` | special operators (including `%%` and `%/%` ) |

`* /` | multiply, divide |

`+ -` | (binary) add, subtract |

`< > <= >= == !=` | ordering and comparison |

`!` | negation |

`& &&` | and |

`| ||` | or |

`~` | as in formulae |

`-> ->>` | rightwards assignment |

`<- <<-` | assignment (right to left) |

`=` | assignment (right to left) |

`?` | help (unary and binary) |

Within an expression operators of equal precedence are evaluated
from left to right except where indicated. (Note that `=`

is not
necessarily an operator.)

The binary operators `::`

, `:::`

, `$`

and `@`

require
names or string constants on the right hand side, and the first two
also require them on the left.

The links in the **See Also** section cover most other aspects of
the basic syntax.

There are substantial precedence differences between **R** and S. In
particular, in S `?`

has the same precedence as (binary) `+ -`

and `& && | ||`

have equal precedence.

Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988)
*The New S Language*.
Wadsworth & Brooks/Cole.

`Arithmetic`

, `Comparison`

, `Control`

,
`Extract`

, `Logic`

,
`NumericConstants`

, `Paren`

,
`Quotes`

, `Reserved`

.

The ‘R Language Definition’ manual.

[Package *base* version 2.15.3 Index]