R运算符
算数运算符
算数算符 |
算符含义 |
^ |
乘幂 |
* |
乘 |
/ |
除 |
+ |
加 |
- |
减 |
%% |
模运算(取余数) |
%/% |
整数除法 |
例子:
> a <- 10
> b <- 2
> c <- 3
> a^b
[1] 100
> a*b
[1] 20
> a/c
[1] 3.333333
> a+b+c
[1] 15
> a-b-c
[1] 5
> a%%c
[1] 1
> a%/%c
[1] 3
比较运算符
建立两个向量之间的一种关系,并要求R确定这种关系是否成立。如果成立,输出的运算结果是 TRUE(1);如果不成立,运算结果为 FALSE(0) .
比较算符 |
算符含义 |
== |
等于 |
!= |
不等于 |
> |
大于 |
< |
小于 |
>= |
大于等于 |
<= |
小于等于 |
例子:
> a <- 4
> b <- 5
> a == b
[1] FALSE
> a != b
[1] TRUE
> a>b
[1] FALSE
> a<b
[1] TRUE
> a>=b
[1] FALSE
> a<=b
[1] TRUE
逻辑运算符
通常用来连接一系列比较式。逻辑算符包括&AND(与)、| OR (或) 和 !NOT(非)。
逻辑算符 |
算符含义 |
&& |
标量的逻辑“与”运算 |
|| |
标量的逻辑“或”运算 |
& |
向量的逻辑“与”运算 |
| |
向量的逻辑“或”运算 |
! |
逻辑非 |
1️⃣如果“&”左右两个量都为真,那么AND运算产生的结果为(TRUE)1,否则为(FALSE)0.
2️⃣如果“|”两边的量至少有一个为真,那么“|”运算的结果是 1.否则是0.
3️⃣“!”也是一个逻辑运算符。在一个之为0的量前面放上!的结果是1.也就是否定一个假的结果为真。相反,否定一个真的结果就是假的。例如,如果A=B为假,那么!(A=B)为真。
> x <- c(TRUE,FALSE,TRUE)
> y <- c(TRUE,TRUE,FALSE)
> x & y
[1] TRUE FALSE FALSE
> x[1] && y[1]
[1] TRUE
> x && y //这里是会报错的,“&&”只适用于标量之间的判断,标量是只含有一个元素的变量
[1] TRUE
Warning messages:
1: In x && y : 'length(x) = 3 > 1' in coercion to 'logical(1)'
2: In x && y : 'length(x) = 3 > 1' in coercion to 'logical(1)'
> if(x[1]&&y[1]) //if语句的含义就是一旦()内为真则执行下面的子句"print("both true")"
+ print("both true")
[1] "both true"
注意:
逻辑值TRUE和FALSE可以缩写为T和F(必须大写),而在算数表达式中它们会转换为1和0.
举个例子:
> x <- 4
> y <- 5
> c = x<y
>c
[1]TRUE //这输出c的值我们可以得到是TRUE
> a<-9
> a+c //当我们把它放到算数表达式中它就相应的转换为1,进行算数运算
[1] 10
运算次序
运算次序准则:
1️⃣括号里的表达式先计算
2️⃣较高优先级的运算先执行
3️⃣对于相同优先级的算符,从左向右运行
R中的运算符运算优先级
算符级别 |
运算算符 |
算符含义 |
第1级(最高级)
|
^ |
乘幂 |
+ |
仅作为前缀时(取正) |
- |
仅作为前缀时(取负) |
! |
非 |
第2级
|
* |
乘 |
/ |
除 |
第3级
|
+ |
仅作为中缀时(加) |
- |
仅作为中缀时(减) |
第4级 |
<,<=,>,>=,==,!= |
-- |
第5级 |
&,&&,|,|| |
-- |