R 中的运算符17 Mar 2025 | 6 分钟阅读 在计算机编程中,运算符是表示一个动作的符号。运算符是一个符号,它告诉编译器执行特定的逻辑或数学运算。R 编程在内置运算符方面非常丰富。 在R 编程中,有不同类型的运算符,每个运算符执行不同的任务。对于数据处理,还有一些高级运算符,例如模型公式和列表索引。 R 中使用以下类型的运算符  - 算术运算符
- 关系运算符
- 逻辑运算符
- 赋值运算符
- 杂项运算符
算术运算符算术运算符是用于表示算术数学运算的符号。运算符作用于向量的每个元素。R 支持各种算术运算符。 序号 | 运算符 | 描述 | 示例 |
---|
1. | + | 此运算符用于在 R 中添加两个向量。a <- c(2, 3.3, 4) | b <- c(11, 5, 3)
print(a+b)
这将为我们提供以下输出 [1] 13.0 8.3 5.0
| 2. | - | 此运算符用于将一个向量除以另一个向量。a <- c(2, 3.3, 4) | b <- c(11, 5, 3)
print(a-b)
这将为我们提供以下输出 [1] -9.0 -1.7 3.0
| 3. | * | 此运算符用于将两个向量相乘。a <- c(2, 3.3, 4) | b <- c(11, 5, 3)
print(a*b)
这将为我们提供以下输出 [1] 22.0 16.5 4.0
| 4. | / | 此运算符将一个向量除以另一个向量。a <- c(2, 3.3, 4) | b <- c(11, 5, 3)
print(a/b) 这将为我们提供以下输出 [1] 0.1818182 0.6600000 4.0000000
| 5. | %% | 此运算符用于查找第一个向量除以第二个向量的余数。a <- c(2, 3.3, 4) | b <- c(11, 5, 3)
print(a%%b)
这将为我们提供以下输出 [1] 2.0 3.3 0
| 6. | %/% | 此运算符用于查找第一个向量除以第二个向量的商。 | a <- c(2, 3.3, 4)
b <- c(11, 5, 3)
print(a%/%b)
这将为我们提供以下输出 [1] 0 0 4
| 7. | ^ | 此运算符将第一个向量提高到第二个向量的指数。a <- c(2, 3.3, 4) | b <- c(11, 5, 3)
print(a^b)
这将为我们提供以下输出 [1] 0248.0000 391.3539 4.0000
|
关系运算符关系运算符是定义两个实体之间某种关系的符号。这些包括数值相等性和不等式。关系运算符将第一个向量的每个元素与第二个向量的相应元素进行比较。比较的结果将是一个布尔值。R 支持以下关系运算符 序号 | 运算符 | 描述 | 示例 |
---|
1. | > | 当第一个向量中的每个元素都大于第二个向量的相应元素时,此运算符将返回 TRUE。 | a <- c(1, 3, 5)
b <- c(2, 4, 6)
print(a>b)
这将为我们提供以下输出 [1] FALSE FALSE FALSE
| 2. | < | 当第一个向量中的每个元素都小于第二个向量的相应元素时,此运算符将返回 TRUE。 | a <- c(1, 9, 5)
b <- c(2, 4, 6)
print(a<b)
这将为我们提供以下输出 [1] FALSE TRUE FALSE
| 3. | <= | 当第一个向量中的每个元素都小于或等于另一个向量的相应元素时,此运算符将返回 TRUE。 | a <- c(1, 3, 5)
b <- c(2, 3, 6)
print(a<=b)
这将为我们提供以下输出 [1] TRUE TRUE TRUE
| 4. | >= | 当第一个向量中的每个元素都大于或等于另一个向量的相应元素时,此运算符将返回 TRUE。 | a <- c(1, 3, 5)
b <- c(2, 3, 6)
print(a>=b)
这将为我们提供以下输出 [1] FALSE TRUE FALSE
| 5. | == | 当第一个向量中的每个元素都等于第二个向量的相应元素时,此运算符将返回 TRUE。 | a <- c(1, 3, 5)
b <- c(2, 3, 6)
print(a==b)
这将为我们提供以下输出[1] FALSE TRUE FALSE
| 6. | != | 当第一个向量中的每个元素都不等于第二个向量的相应元素时,此运算符将返回 TRUE。 | a <- c(1, 3, 5)
b <- c(2, 3, 6)
print(a>=b)
这将为我们提供以下输出 [1] TRUE FALSE TRUE
|
逻辑运算符逻辑运算符允许程序根据多个条件做出决策。在程序中,每个操作数都被视为一个条件,该条件可以评估为 false 或 true 值。条件的价值用于确定 op1 运算符 op2 的总体价值。逻辑运算符适用于类型为逻辑、数字或复数的那些向量。 逻辑运算符将第一个向量的每个元素与第二个向量的相应元素进行比较。 R 支持以下类型的运算符序号 | 运算符 | 描述 | 示例 |
---|
1. | & | 此运算符称为逻辑与运算符。此运算符获取两个向量的第一个元素,如果两个元素都为 TRUE,则返回 TRUE。 | a <- c(3, 0, TRUE, 2+2i)
b <- c(2, 4, TRUE, 2+3i)
print(a&b)
这将为我们提供以下输出 [1] TRUE FALSE TRUE TRUE
| 2. | | | 此运算符称为逻辑或运算符。此运算符获取两个向量的第一个元素,如果其中一个为 TRUE,则返回 TRUE。 | a <- c(3, 0, TRUE, 2+2i)
b <- c(2, 4, TRUE, 2+3i)
print(a|b)
这将为我们提供以下输出 [1] TRUE TRUE TRUE TRUE
| 3. | ! | 此运算符称为逻辑非运算符。此运算符获取向量的第一个元素,并给出相反的逻辑值作为结果。 | a <- c(3, 0, TRUE, 2+2i)
print(!a)
这将为我们提供以下输出 [1] FALSE TRUE FALSE FALSE
| 4. | && | 此运算符获取两个向量的第一个元素,并且仅当两者都为 TRUE 时才给出 TRUE 作为结果。 | a <- c(3, 0, TRUE, 2+2i)
b <- c(2, 4, TRUE, 2+3i)
print(a&&b)
这将为我们提供以下输出 [1] TRUE
| 5. | || | 此运算符获取两个向量的第一个元素,如果其中一个为真,则给出结果 TRUE。 | a <- c(3, 0, TRUE, 2+2i)
b <- c(2, 4, TRUE, 2+3i)
print(a||b)
这将为我们提供以下输出 [1] TRUE
|
赋值运算符赋值运算符用于将新值分配给变量。在 R 中,这些运算符用于将值分配给向量。有以下类型的赋值 序号 | 运算符 | 描述 | 示例 |
---|
1. | <- or = or <<- | 这些运算符被称为左赋值运算符。 | a <- c(3, 0, TRUE, 2+2i)
b <<- c(2, 4, TRUE, 2+3i)
d = c(1, 2, TRUE, 2+3i)
print(a)
print(b)
print(d)
这将为我们提供以下输出 [1] 3+0i 0+0i 1+0i 2+2i
[1] 2+0i 4+0i 1+0i 2+3i
[1] 1+0i 2+0i 1+0i 2+3i
| 2. | -> or ->> | 这些运算符被称为右赋值运算符。 | c(3, 0, TRUE, 2+2i) -> a
c(2, 4, TRUE, 2+3i) ->> b
print(a)
print(b)
这将为我们提供以下输出 [1] 3+0i 0+0i 1+0i 2+2i
[1] 2+0i 4+0i 1+0i 2+3i
|
R 支持的运算符
杂项运算符杂项运算符用于特殊和特定目的。这些运算符不用于一般的数学或逻辑计算。R 中支持以下杂项运算符 序号 | 运算符 | 描述 | 示例 |
---|
1. | : | 冒号运算符用于创建向量的数字序列。 | v <- 1:8
print(v)
这将为我们提供以下输出 [1] 1 2 3 4 5 6 7 8
| 2. | %in% | 当我们想确定一个元素是否属于一个向量时,使用它。 | a1 <- 8
a2 <- 12
d <- 1:10
print(a1%in%t)
print(a2%in%t)
这将为我们提供以下输出 [1] FALSE
[1] FALSE
| 3. | %*% | 它用于将矩阵与其转置相乘。 | M=matrix(c(1,2,3,4,5,6), nrow=2, ncol=3, byrow=TRUE)
T=m%*%T(m)
print(T)
这将为我们提供以下输出 14 32
32 77
|
|