R语言运算符

运算符是一个符号,通知编译器执行特定的数学或逻辑操作。 R语言具有丰富的内置运算符,并提供以下类型的运算符。

运算符的类型

R语言中拥有如下几种运算符类型:

  • 算术运算符
  • 关系运算符
  • 逻辑运算符
  • 赋值运算符
  • 其他运算符

算术运算符

下表显示了R语言支持的算术运算符。 操作符对向量的每个元素起作用。

运算符 描述
+ 两个向量相加
v <- c( 2,5.5,6)
t <- c(8, 3, 4)
print(v+t)

它产生以下结果 -

10.0  8.5  10.0
- 两个向量相减
v <- c( 2,5.5,6)
t <- c(8, 3, 4)
print(v-t)

它产生以下结果 -

-6.0  2.5  2.0
`*` 两个向量相乘
v <- c( 2,5.5,6)
t <- c(8, 3, 4)
print(v*t)

它产生以下结果 -

16.0 16.5 24.0
/ 将第一个向量与第二个向量相除
v <- c( 2,5.5,6)
t <- c(8, 3, 4)
print(v/t)

当我们执行上面的代码,它产生以下结果 -

0.250000 1.833333 1.500000
%% 两个向量求余
v <- c( 2,5.5,6)
t <- c(8, 3, 4)
print(v%%t)

它产生以下结果 -

[1] 2.0 2.5 2.0
%/% 两个向量相除求商
v <- c( 2,5.5,6)
t <- c(8, 3, 4)
print(v%/%t)

它产生以下结果 -

[1] 0 1 1
^ 将第二向量作为第一向量的指数
v <- c( 2,5.5,6)
t <- c(8, 3, 4)
print(v^t)

它产生以下结果 -

[1]  256.000  166.375 1296.000

关系运算符

下表显示了R语言支持的关系运算符。 将第一向量的每个元素与第二向量的相应元素进行比较。 比较的结果是布尔值。

运算符 描述
> 检查第一向量的每个元素是否大于第二向量的相应元素。
v <- c(2,5.5,6,9)
t <- c(8,2.5,14,9)
print(v>t)

它产生以下结果 -

FALSE  TRUE FALSE FALSE
< 检查第一个向量的每个元素是否小于第二个向量的相应元素。
v <- c(2,5.5,6,9)
t <- c(8,2.5,14,9)
print(v < t)

它产生以下结果 -

TRUE FALSE  TRUE FALSE
== 检查第一个向量的每个元素是否等于第二个向量的相应元素。
v <- c(2,5.5,6,9)
t <- c(8,2.5,14,9)
print(v == t)

它产生以下结果 -

FALSE FALSE FALSE  TRUE
<= 检查第一向量的每个元素是否小于或等于第二向量的相应元素。
v <- c(2,5.5,6,9)
t <- c(8,2.5,14,9)
print(v<=t)

它产生以下结果 -

TRUE FALSE  TRUE  TRUE
> = 检查第一向量的每个元素是否大于或等于第二向量的相应元素。
v <- c(2,5.5,6,9)
t <- c(8,2.5,14,9)
print(v>=t)

它产生以下结果 -

FALSE  TRUE FALSE  TRUE
!= 检查第一个向量的每个元素是否不等于第二个向量的相应元素。
v <- c(2,5.5,6,9)
t <- c(8,2.5,14,9)
print(v!=t)

它产生以下结果 -

TRUE  TRUE  TRUE FALSE

逻辑运算符

下表显示了R语言支持的逻辑运算符。 它只适用于逻辑,数字或复杂类型的向量。 所有大于1的数字被认为是逻辑值TRUE。

将第一向量的每个元素与第二向量的相应元素进行比较。 比较的结果是布尔值。

运算符 描述
& 它被称为元素逻辑AND运算符。 它将第一向量的每个元素与第二向量的相应元素组合,并且如果两个元素都为TRUE,则给出输出TRUE。
v <- c(3,1,TRUE,2+3i)
t <- c(4,1,FALSE,2+3i)
print(v&t)

它产生以下结果 -

TRUE  TRUE FALSE  TRUE
| 它被称为元素逻辑或运算符。 它将第一向量的每个元素与第二向量的相应元素组合,并且如果元素为真,则给出输出TRUE。
v <- c(3,0,TRUE,2+2i)
t <- c(4,0,FALSE,2+3i)
print(v|t)

它产生以下结果 -

TRUE FALSE  TRUE  TRUE
! 它被称为逻辑非运算符。 取得向量的每个元素,并给出相反的逻辑值。
v <- c(3,0,TRUE,2+2i)
print(!v)

它产生以下结果 -

FALSE  TRUE FALSE FALSE

逻辑运算符&&和|| 只考虑向量的第一个元素,给出单个元素的向量作为输出。

运算符 描述
&& 称为逻辑AND运算符。 取两个向量的第一个元素,并且只有两个都为TRUE时才给出TRUE。
v <- c(3,0,TRUE,2+2i)
t <- c(1,3,TRUE,2+3i)
print(v&&t)

它产生以下结果 -

TRUE
|| 称为逻辑OR运算符。 取两个向量的第一个元素,如果其中一个为TRUE,则给出TRUE。
v <- c(0,0,TRUE,2+2i)
t <- c(0,3,TRUE,2+3i)
print(v||t)

它产生以下结果 -

FALSE

赋值运算符

这些运算符用于向向量赋值。

运算符 描述

<−

or

=

or

<<−

称为左分配
v1 <- c(3,1,TRUE,2+3i)
v2 <<- c(3,1,TRUE,2+3i)
v3 = c(3,1,TRUE,2+3i)
print(v1)
print(v2)
print(v3)

它产生以下结果 -

3+0i 1+0i 1+0i 2+3i
3+0i 1+0i 1+0i 2+3i
3+0i 1+0i 1+0i 2+3i

->

or

->>

称为右分配
c(3,1,TRUE,2+3i) -> v1
c(3,1,TRUE,2+3i) ->> v2
print(v1)
print(v2)

它产生以下结果 -

3+0i 1+0i 1+0i 2+3i
3+0i 1+0i 1+0i 2+3i

其他运算符

这些运算符用于特定目的,而不是一般的数学或逻辑计算。

运算符 描述
: 冒号运算符。 它为向量按顺序创建一系列数字。
v <- 2:8
print(v)

它产生以下结果 -

2 3 4 5 6 7 8
%in% 此运算符用于标识元素是否属于向量。
v1 <- 8
v2 <- 12
t <- 1:10
print(v1 %in% t)
print(v2 %in% t)

它产生以下结果 -

TRUE
FALSE
%*% 此运算符用于将矩阵与其转置相乘。
M = matrix( c(2,6,5,1,10,4), nrow = 2,ncol = 3,byrow = TRUE)
t = M %*% t(M)
print(t)

它产生以下结果 -

      [,1] [,2]
[1,] 65 82
[2,] 82 117

本文转自:http://codingdict.com/article/2827

R语言 运算符的更多相关文章

  1. R语言运算符

    运算符是一个符号,它告诉编译器执行特定的数学或逻辑操作. R语言丰富的内置运算符,并提供以下类型的运算符. 运算符类型 在R编程中有以下类型的运算符 - 算术运算符 关系运算符 逻辑运算符 赋值运算符 ...

  2. R语言实战(二)数据管理

    本文对应<R语言实战>第4章:基本数据管理:第5章:高级数据管理 创建新变量 #建议采用transform()函数 mydata <- transform(mydata, sumx ...

  3. R语言介绍

    R语言简介 R语言是一种为统计计算和图形显示而设计的语言环境,是贝尔实验室(Bell Laboratories)的Rick Becker.John Chambers和Allan Wilks开发的S语言 ...

  4. R语言Data Frame数据框常用操作

    Data Frame一般被翻译为数据框,感觉就像是R中的表,由行和列组成,与Matrix不同的是,每个列可以是不同的数据类型,而Matrix是必须相同的. Data Frame每一列有列名,每一行也可 ...

  5. R语言学习笔记:向量

    向量是R语言最基本的数据类型. 单个数值(标量)其实没有单独的数据类型,它只不过是只有一个元素的向量. x <- c(1, 2, 4, 9) x <- c(x[1:3], 88, x[4] ...

  6. R语言编程艺术# 数据类型向量(vector)

    R语言最基本的数据类型-向量(vector) 1.插入向量元素,同一向量中的所有的元素必须是相同的模式(数据类型),如整型.数值型(浮点数).字符型(字符串).逻辑型.复数型等.查看变量的类型可以用t ...

  7. R语言编程艺术# 矩阵(matrix)和数组(array)

    矩阵(matrix)是一种特殊的向量,包含两个附加的属性:行数和列数.所以矩阵也是和向量一样,有模式(数据类型)的概念.(但反过来,向量却不能看作是只有一列或一行的矩阵. 数组(array)是R里更一 ...

  8. Iris的R语言命令工具箱(1)

    Iris的R语言命令工具箱(1) 最近在做数据分析,使用了R语言做了些数据处理和可视化,在此记下遇到过的问题.应用过的命令.处理方式以及工具包- *版权声明:本文为博主原创文章,转载请注明本文地址.h ...

  9. R语言︱ 数据库SQL-R连接与SQL语句执行(RODBC、sqldf包)

    要学的东西太多,无笔记不能学~~ 欢迎关注公众号,一起分享学习笔记,记录每一颗"贝壳"~ --------------------------- 数据库是极其重要的R语言数据导入源 ...

随机推荐

  1. ubuntu:beyond compare 4 This license key has been revoked 解决办法

    错误如图所示: 解决办法: (1)先用find命令找到bcompare所在位置:sudo find /home/ -name '*bcompare' ()进入 /home/whf/.config,删除 ...

  2. CSIC_716_20191225【HTML基础入门】

    HTTP协议 超文本传输协议HyperText Transfer Protocol 四大特性: 1.一次请求一次响应 2.基于TCP/IP协议,作用于应用层 3.无状态 4.无连接 数据格式: 1.请 ...

  3. Dart编程实例 - Dart 面向对象编程

    Dart编程实例 - Dart 面向对象编程 class TestClass { void disp() { print("Hello World"); } } void main ...

  4. Yii2 搜索

    搜索的形式: 第一种,点击空白处: <?php $data=['0'=>'已删除','10'=>'正常','1'=>'锁定']; ?> <table style=' ...

  5. 使用HBuilder编辑器进行真机调试运行时提示Waiting for debugger!

    在使用HBuilder编辑器创建mui项目进行真机调试的时候,手机总是提示Waiting for debugger! 现在终于找到了解决办法: 手机 设置 -> 开发人员选项 -> USB ...

  6. HBase自定义MapReduce

    HBase表数据的转移 在Hadoop阶段,我们编写的MR任务分别进程了Mapper和Reducer两个类,而在HBase中我们需要继承的是TableMapper和TableReducer两个类. 目 ...

  7. Dubbo入门到精通学习笔记(十三):ZooKeeper集群的安装、配置、高可用测试、升级、迁移

    文章目录 ZooKeeper集群的安装.配置.高可用测试 ZooKeeper 与 Dubbo 服务集群架构图 1. 修改操作系统的/etc/hosts 文件,添加 IP 与主机名映射: 2. 下载或上 ...

  8. JAVA FileUtils(文件读写以及操作工具类)

    文件操作常用功能: package com.suning.yypt.business.report; import java.io.*; import java.util.*; @SuppressWa ...

  9. .ssh 别名连接

    参考ssh支持配置 man ssh_config 配置模板 vim ~/.ssh/config Host <别名> Port <机器端口号> IdentityFile < ...

  10. VC++ 2010 创建高级Ribbon界面详解(2)

    Ribbon 控件的使用 1.命令按钮 命令按钮可以说是我们最常用的Ribbon控件了,我们通常都是通过命令按钮来发送某个命令,执行某个动作.它代替了过去的菜单命令,成为使用最频繁的Ribbon控件. ...