R 中的运算符

17 Mar 2025 | 6 分钟阅读

计算机编程中,运算符是表示一个动作的符号。运算符是一个符号,它告诉编译器执行特定的逻辑数学运算。R 编程在内置运算符方面非常丰富。

R 编程中,有不同类型的运算符,每个运算符执行不同的任务。对于数据处理,还有一些高级运算符,例如模型公式和列表索引。

R 中使用以下类型的运算符

R Operators
  1. 算术运算符
  2. 关系运算符
  3. 逻辑运算符
  4. 赋值运算符
  5. 杂项运算符

算术运算符

算术运算符是用于表示算术数学运算的符号。运算符作用于向量的每个元素。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
	

下一主题R If 语句