R语言
Syntax
位于 base
包(package)。 说明
概要R语法并给出运算符的优先级。
细节
定义了以下一元和二元运算符。它们按优先级组列出,从最高到最低。
:: ::: | 访问命名空间中的变量 |
$ @ | 元件/插槽提取 |
[ [[ | indexing |
^ | 求幂(从右到左) |
- + | 一元减号和加号 |
: | 序列运算符 |
%any% |> | 特殊运算符(包括 %% 和 %/% ) |
* / | 乘、除 |
+ - | (二进制)加、减 |
< > <= >= == != | 排序和比较 |
! | negation |
& && | and |
| || | or |
~ | 如公式中所示 |
-> ->> | 向右赋值 |
<- <<- | 赋值(从右到左) |
= | 赋值(从右到左) |
? | 帮助(一元和二进制) |
在表达式中,除非另有说明,优先级相同的运算符从左到右进行计算。 (请注意,=
不一定是运算符。)
二元运算符 ::
、 :::
、 $
和 @
要求名称或字符串常量位于右侧,前两个也需要它们位于左侧。
另请参阅部分中的链接涵盖了基本语法的大多数其他方面。
注意
之间存在显著的优先级差异R和 S。特别是,在 S?
与(二进制)具有相同的优先级+ -
和& && | ||
具有同等优先权。
例子
## Logical AND ("&&") has higher precedence than OR ("||"):
TRUE || TRUE && FALSE # is the same as
TRUE || (TRUE && FALSE) # and different from
(TRUE || TRUE) && FALSE
## Special operators have higher precedence than "!" (logical NOT).
## You can use this for %in% :
! 1:10 %in% c(2, 3, 5, 7) # same as !(1:10 %in% c(2, 3, 5, 7))
## but we strongly advise to use the "!( ... )" form in this case!
## '=' has lower precedence than '<-' ... so you should not mix them
## (and '<-' is considered better style anyway):
## Not run: ## Consequently, this gives a ("non-catchable") error
x <- y = 5 #-> Error in (x <- y) = 5 : ....
## End(Not run)
参考
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
。
“R 语言定义”手册。
相关用法
- R Sys.getenv 获取环境变量
- R Sys.localeconv 查找当前语言环境中数字和货币表示形式的详细信息
- R Sys.setFileTime 设置文件时间
- R Sys.info 提取系统和用户信息
- R Sys.sleep 暂停执行一段时间
- R Sys.setenv 设置或取消设置环境变量
- R Sys.getpid 获取 R 会话的进程 ID
- R Sys.readlink 读取文件符号链接
- R Sys.glob 文件路径上的通配符扩展
- R Sys.which 查找可执行文件的完整路径
- R Sys.time 获取当前日期和时间
- R Startup R 会话开始时的初始化
- R Signals 中断 R 的执行
- R Special 数学的特殊函数
- R S3method 注册S3方法
- R file.path 构造文件路径
- R grep 模式匹配和替换
- R getwd 获取或设置工作目录
- R vector 向量 - 创建、强制等
- R lapply 对列表或向量应用函数
- R dump R 对象的文本表示
- R rank 样本排名
- R getDLLRegisteredRoutines DLL 中 C/Fortran 例程的反射信息
- R pushBack 将文本推回连接
- R strsplit 分割字符向量的元素
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Operator Syntax and Precedence。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。