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

运算符类型

R编程中有以下类型的运算符 -

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

1.算术运算符

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

  • 加法(+), 相加两个向量。
    示例代码:

    v <- c( 2,5.5,6);
    t <- c(8, 3, 4);
    print(v+t);
    R

    执行上面示例代码,得到以下结果 -

    [1] 10.0  8.5 10.0
    Shell
  • 减法(-), 将一个向量减去另一个向量。
    示例代码:

    v <- c( 2,5.5,6);
    t <- c(8, 3, 4);
    print(v-t);
    R

    执行上面示例代码,得到以下结果 -

    [1] -6.0  2.5  2.0
    Shell
  • 乘法(*), 将两向量相乘。
    示例代码:

    v <- c( 2,5.5,6);
    t <- c(8, 3, 4);
    print(v*t);
    R

    执行上面示例代码,得到以下结果 -

    [1] 16.0 16.5 24.0
    Shell
  • 除法(/), 将第一个向量除以第二个向量。
    示例代码:

    v <- c( 2,5.5,6);
    t <- c(8, 3, 4);
    print(v/t);
    R

    执行上面示例代码,得到以下结果 -

    [1] 0.250000 1.833333 1.500000
    Shell
  • 求余(%%), 将第一个向量除以第二个向量得到余数。
    示例代码:

    v <- c( 2,5.5,6);
    t <- c(8, 3, 4);
    print(v%%t);
    R

    执行上面示例代码,得到以下结果 -

    [1] 2.0 2.5 2.0
    Shell
  • 求模数(%/%), 将第一个向量除以第二个向量得到模数。
    示例代码:

    v <- c( 2,5.5,6);
    t <- c(8, 3, 4);
    print(v%/%t);
    R

    执行上面示例代码,得到以下结果 -

    [1] 0 1 1
    Shell
  • 求指数幂(^), 将第一个向量除以第二个向量得到幂值。
    示例代码:

    v <- c( 2,5.5,6);
    t <- c(8, 3, 4);
    print(v^t);
    R

    执行上面示例代码,得到以下结果 -

    [1]  256.000  166.375 1296.000
    Shell

2. 关系运算符

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

  • 大于(>) - 检查第一个向量的每个元素是否大于第二个向量中的相应元素。
    示例代码:

    v <- c(2,5.5,6,9);
    t <- c(8,2.5,14,9);
    print(v>t);
    R

    执行上面示例代码,得到以下结果 -

    [1] FALSE  TRUE FALSE FALSE
    Shell
  • 小于(<) - 检查第一个向量的每个元素是否小于第二个向量中的相应元素。
    示例代码:

    v <- c(2,5.5,6,9);
    t <- c(8,2.5,14,9);
    print(v < t);
    R

    执行上面示例代码,得到以下结果 -

    [1]  TRUE FALSE  TRUE FALSE
    Shell
  • 等于(==) - 检查第一个向量的每个元素是否等于第二个向量中的相应元素。
    示例代码:

    v <- c(2,5.5,6,9);
    t <- c(8,2.5,14,9);
    print(v == t);
    R

    执行上面示例代码,得到以下结果 -

    [1] FALSE FALSE FALSE  TRUE
    Shell
  • 小于或等于(<=) - 检查第一个向量的每个元素是否小于或等于第二个向量中的相应元素。
    示例代码:

    v <- c(2,5.5,6,9);
    t <- c(8,2.5,14,9);
    print(v<=t);
    R

    执行上面示例代码,得到以下结果 -

    [1]  TRUE FALSE  TRUE  TRUE
    Shell
  • 大于或等于(>=) - 检查第一个向量的每个元素是否大于或等于第二个向量中的相应元素。
    示例代码:

    v <- c(2,5.5,6,9);
    t <- c(8,2.5,14,9);
    print(v>=t);
    R

    执行上面示例代码,得到以下结果 -

    [1] FALSE  TRUE FALSE  TRUE
    Shell
  • 不等于(!=) - 检查第一个向量的每个元素是否不等于第二个向量中的相应元素。
    示例代码:

    v <- c(2,5.5,6,9);
    t <- c(8,2.5,14,9);
    print(v!=t);
    R

    执行上面示例代码,得到以下结果 -

    [1]  TRUE  TRUE  TRUE FALSE
    Shell

3. 逻辑运算符

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

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

  • 逻辑与(&) - 它被称为元素逻辑与运算符。它将第一个向量的每个元素与第二个向量的相应元素相结合,如果两个元素都为真,则输出为TRUE
    示例代码:

    v <- c(3,1,TRUE,2+3i);
    t <- c(4,1,FALSE,2+3i);
    print(v&t);
    R

    执行上面示例代码,得到以下结果 -

    [1]  TRUE  TRUE FALSE  TRUE
    Shell
  • 逻辑或(|) - 它被称为元素逻辑或运算符。它将第一个向量的每个元素与第二个向量的相应元素相结合,如果两个元素中有一个为真,则输出为TRUE
    示例代码:

    v <- c(3,0,TRUE,2+2i);
    t <- c(4,0,FALSE,2+3i);
    print(v|t);
    R

    执行上面示例代码,得到以下结果 -

    [1]  TRUE FALSE  TRUE  TRUE
    Shell
  • 逻辑非(!) - 它被称为元素逻辑非运算符。获取向量的每个元素并给出相反的逻辑值。
    示例代码:

    v <- c(3,0,TRUE,2+2i);
    print(!v);
    R

    执行上面示例代码,得到以下结果 -

    [1] FALSE  TRUE FALSE FALSE
    Shell

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

  • 逻辑与运算符(&&) - 取两个向量的第一个元素,并且只有在两个都为TRUE时结果才为TRUE值。

    v <- c(3,0,TRUE,2+2i);
    t <- c(1,3,TRUE,2+3i);
    print(v&&t);
    R

    执行上面示例代码,得到以下结果 -

    [1] TRUE
    Shell
  • 逻辑或运算符(||) - 取两个向量的第一个元素,并且如果有一个为TRUE时,结果为TRUE值。

    v <- c(0,0,TRUE,2+2i);
    t <- c(0,3,TRUE,2+3i);
    print(v||t);
    R

    执行上面示例代码,得到以下结果 -

    [1] FALSE
    Shell

4. 赋值运算符

这些运算符用于向向量分配值。

  • <−<<−= - 叫作左分配符。参考以下代码 -

    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);
    R

    执行上面示例代码,得到以下结果 -

    [1] 3+0i 1+0i 1+0i 2+3i
    [1] 3+0i 1+0i 1+0i 2+3i
    [1] 3+0i 1+0i 1+0i 2+3i
    Shell
  • ->->> - 叫作右分配符。参考以下代码 -

    c(3,1,TRUE,2+3i) -> v1;
    c(3,1,TRUE,2+3i) ->> v2;
    print(v1);
    print(v2);
    R

    执行上面示例代码,得到以下结果 -

    [1] 3+0i 1+0i 1+0i 2+3i
    [1] 3+0i 1+0i 1+0i 2+3i
    Shell

5. 其他运算符

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

  • 冒号运算符(:) - 它为向量创建一系列数字。参考以下代码 -

    v <- 2:8;
    print(v);
    R

    执行上面示例代码,得到以下结果 -

    [1] 2 3 4 5 6 7 8
    Shell
  • 成员运算符(%in%) - 该运算符用于识别元素是否属于向量。参考以下代码 -

    v1 <- 8 ;
    v2 <- 12;
    t <- 1:10;
    print(v1 %in% t) ;
    print(v2 %in% t) ;
    R

    执行上面示例代码,得到以下结果 -

    [1] TRUE
    [1] FALSE
    Shell
  • 转置相乘(%*%) - 该运算符用于将矩阵与其转置相乘。参考以下代码 -

    M = matrix( c(2,6,5,1,10,4), nrow = 2,ncol = 3,byrow = TRUE);
    t = M %*% t(M);
    print(t);
    R

    执行上面示例代码,得到以下结果 -

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

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

  1. R语言 运算符

    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. Win7_Ultimate + VS2010 + openGL 配置

    Win7_Ultimate + VS2010 + openGL 配置 0. 前言 OpenGL作为当前主流的图形API之一,它在一些场合具有比DirectX更优越的特性. (1)与C语言紧密结合. O ...

  2. 建立多人协作git仓库/git 仓库权限控制(SSH)

    转载文章请保留出处  http://blog.csdn.net/defeattroy/article/details/13775499 git仓库是多人协作使用的,可以基于很多种协议,例如http.g ...

  3. Beyond Compare脚本:命令行批量比较文件并生成html格式的差异报告

    BComp.exe /silent /closescript /solo @E:\compareTest\BCbatch.txt text-report layout:side-by-side opt ...

  4. IllegalArgumentException: requirement failed: Corrupt index found

    今天突然接到客户反映线上服务器发送消息异常,登录服务器查看是kafka服务出现了问题,想重启一下服务,结果重启出现一下报错 [2017-06-30 19:29:13,708] FATAL Fatal ...

  5. SSRS (一)创建基础报表

    ReportService创建基础报表 1.数据库SQL Server2012选择SQL Server Data Tools 2.创建商业智能(BI)项目 选择报表服务器项目 ReportServic ...

  6. Asp.Net从相对路径获取绝对路径的方法(不需要httpcontext上下文也可)

    //如果拿不到当前HttpContext上下文的话可以用该方法取得绝对路径 var filePath = HostingEnvironment.MapPath("需要获取绝对路径 的 相对路 ...

  7. 网易云社区有奖问答活动第二期——技术领导力、深入分布式、PHP圣经、Linux运维、Unity……三月热点图书等你拿!

    网易云社区第二期有奖问答活动开始了!(第一期活动已结束:人工智能图书大抽奖!) 欢迎积极参与网易云社区,讨论问题,交流心得.我们本期准备了一批技术领域热点图书,送给参与社区的朋友们,将以抽奖的形式送出 ...

  8. 面试题-一个列表向右移动k位

    def sort(lst,k): length = len(lst) left =lst[:-k] right =lst[-k:] lst.clear() lst.extend(right) lst. ...

  9. Android------------------的资源文件的学习

    一.style的学习 用法: 使用: 使用系统自带的style的风格 使用: 效果: 二.drawable的使用 selector是一个xml文件进行加载使用的: 文件名叫做buttonselecto ...

  10. C - 前m大的数 (结构体)

    点击打开链接 还记得Gardon给小希布置的那个作业么?(上次比赛的1005)其实小希已经找回了原来的那张数表,现在她想确认一下她的答案是否正确,但是整个的答案是很庞大的表,小希只想让你把答案中最大的 ...