R 运算符
提示
- R中的运算符类型:R支持多种运算符,包括算术运算符(加、减、乘、除等)、关系运算符(比较两个值的大小和等价性)、逻辑运算符(执行布尔逻辑运算),以及赋值运算符(将值分配给变量)。
- 算术和关系运算符的使用:算术运算符用于执行数学计算,如加法、减法、乘法等;关系运算符用于比较两个值,结果为真(TRUE)或假(FALSE)。
- 逻辑和赋值运算符的特点:逻辑运算符(如
&
、|
、&&
、||
)用于布尔值的逻辑操作;赋值运算符(如<-
、=
、->
)用于将值分配给变量,其中<-
和=
几乎可以互换使用。
在本文中,您将通过示例学习不同的 R 运算符。
R 具有许多运算符,用于执行不同的数学和逻辑操作。运算符执行包括算术、逻辑和位运算在内的任务。
R 中的运算符类型
R 中的运算符主要可以分为以下几个类别:
- 算术运算符
- 关系运算符
- 逻辑运算符
- 赋值运算符
R 算术运算符
这些运算符用于执行数学操作,如加法和乘法。以下是 R 中可用的算术运算符列表。
运算符 | 描述 |
---|---|
+ | 加法 |
- | 减法 |
* | 乘法 |
/ | 除法 |
^ | 指数 |
%% | 模数(除法余数) |
%/% | 整数除法 |
让我们看一个示例,演示了上述运算符的使用:
x <- 5
y <- 16
x + y
x - y
x * y
y / x
y %/% x
y %% x
y ^ x
输出
\[1\] 21
\[1\] -11
\[1\] 80
\[1\] 3.2
\[1\] 3
\[1\] 1
\[1\] 1048576
R 关系运算符
关系运算符用于比较值之间的关系。以下是 R 中可用的关系运算符列表。
运算符 | 描述 |
---|---|
< | 小于 |
\> | 大于 |
<= | 小于或等于 |
>= | 大于或等于 |
== | 等于 |
!= | 不等于 |
让我们看一个示例:
x <- 5
y <- 16
x < y
x > y
x <= 5
y >= 20
y == 16
x != 5
输出
\[1\] TRUE
\[1\] FALSE
\[1\] TRUE
\[1\] FALSE
\[1\] TRUE
\[1\] FALSE
向量上的操作
上述提到的运算符在vectors上工作。上面使用的变量实际上是单元素向量。
我们可以使用函数c()
(类似于连接)在 R 中创建向量。
所有操作都以逐元素方式进行。这是一个示例。
x <- c(2, 8, 3)
y <- c(6, 4, 1)
x + y
x > y
输出
\[1\] 8 12 4
\[1\] FALSE TRUE TRUE
当操作数向量的长度(元素数量)不匹配时,较短的向量中的元素会循环使用,以匹配较长的向量的长度。
如果较长向量的长度不是较短向量的整数倍,R 会发出警告。
x <- c(2, 1, 8, 3)
y <- c(9, 4)
x + y
x - 1
x + c(1, 2, 3)
输出
\[1\] 11 5 17 7
\[1\]1 0 7 2
\[1\] 3 3 11 4
警告信息:
In x + c(1, 2, 3) :
longer object length is not a multiple of shorter object length
R 逻辑运算符
逻辑运算符用于执行布尔运算,如AND
、OR
等。
运算符 | 描述 |
---|---|
! | 逻辑非 |
& | 逐元素逻辑 AND |
&& | 逻辑 AND |
| | 逐元素逻辑 OR |
|| | 逻辑 OR |
运算符&
和|
执行逐元素操作,产生具有较长操作数长度的结果。
但&&
和||
只检查操作数的第一个元素,结果是一个长度为 1 的逻辑向量。
零被视为FALSE
,非零数字被视为TRUE
。让我们看一个示例:
x <- c(TRUE, FALSE, 0, 6)
y <- c(FALSE, TRUE, FALSE, TRUE)
!x
x & y
x && y
x | y
x || y
输出
\[1\] FALSE TRUE TRUE FALSE
\[1\] FALSE FALSE FALSE TRUE
\[1\] FALSE
\[1\] TRUE TRUE FALSE TRUE
\[1\] TRUE
R 赋值运算符
这些运算符用于为变量赋值。
运算符 | 描述 |
---|---|
= | 左向赋值 |
<- , ->> | 右向赋值 |
运算符<-
和=
可以几乎可以互换地在同一环境中赋值给变量。
<<-
运算符用于在父环境中赋值给变量(更像是全局赋值)。右向赋值 ,虽然可用,但很少使用。
x <- 5
x
x <- 9
x
10 -> x
x
输出
\[1\] 5
\[1\] 9
\[1\] 10