R语言 运算符
R语言运算符
运算符是一个符号,通知编译器执行特定的数学或逻辑操作。 R语言具有丰富的内置运算符,并提供以下类型的运算符。
运算符的类型
R语言中拥有如下几种运算符类型:
- 算术运算符
- 关系运算符
- 逻辑运算符
- 赋值运算符
- 其他运算符
算术运算符
下表显示了R语言支持的算术运算符。 操作符对向量的每个元素起作用。
| 运算符 | 描述 | 例 |
|---|---|---|
| + | 两个向量相加 |
v <- c( 2,5.5,6) 它产生以下结果 - 10.0 8.5 10.0 |
| - | 两个向量相减 |
v <- c( 2,5.5,6) 它产生以下结果 - -6.0 2.5 2.0 |
| `*` | 两个向量相乘 |
v <- c( 2,5.5,6) 它产生以下结果 - 16.0 16.5 24.0 |
| / | 将第一个向量与第二个向量相除 |
v <- c( 2,5.5,6) 当我们执行上面的代码,它产生以下结果 - 0.250000 1.833333 1.500000 |
| %% | 两个向量求余 |
v <- c( 2,5.5,6) 它产生以下结果 - [1] 2.0 2.5 2.0 |
| %/% | 两个向量相除求商 |
v <- c( 2,5.5,6) 它产生以下结果 - [1] 0 1 1 |
| ^ | 将第二向量作为第一向量的指数 |
v <- c( 2,5.5,6) 它产生以下结果 - [1] 256.000 166.375 1296.000 |
关系运算符
下表显示了R语言支持的关系运算符。 将第一向量的每个元素与第二向量的相应元素进行比较。 比较的结果是布尔值。
| 运算符 | 描述 | 例 |
|---|---|---|
| > | 检查第一向量的每个元素是否大于第二向量的相应元素。 |
v <- c(2,5.5,6,9) 它产生以下结果 - FALSE TRUE FALSE FALSE |
| < | 检查第一个向量的每个元素是否小于第二个向量的相应元素。 |
v <- c(2,5.5,6,9) 它产生以下结果 - TRUE FALSE TRUE FALSE |
| == | 检查第一个向量的每个元素是否等于第二个向量的相应元素。 |
v <- c(2,5.5,6,9) 它产生以下结果 - FALSE FALSE FALSE TRUE |
| <= | 检查第一向量的每个元素是否小于或等于第二向量的相应元素。 |
v <- c(2,5.5,6,9) 它产生以下结果 - TRUE FALSE TRUE TRUE |
| > = | 检查第一向量的每个元素是否大于或等于第二向量的相应元素。 |
v <- c(2,5.5,6,9) 它产生以下结果 - FALSE TRUE FALSE TRUE |
| != | 检查第一个向量的每个元素是否不等于第二个向量的相应元素。 |
v <- c(2,5.5,6,9) 它产生以下结果 - TRUE TRUE TRUE FALSE |
逻辑运算符
下表显示了R语言支持的逻辑运算符。 它只适用于逻辑,数字或复杂类型的向量。 所有大于1的数字被认为是逻辑值TRUE。
将第一向量的每个元素与第二向量的相应元素进行比较。 比较的结果是布尔值。
| 运算符 | 描述 | 例 |
|---|---|---|
| & | 它被称为元素逻辑AND运算符。 它将第一向量的每个元素与第二向量的相应元素组合,并且如果两个元素都为TRUE,则给出输出TRUE。 |
v <- c(3,1,TRUE,2+3i) 它产生以下结果 - TRUE TRUE FALSE TRUE |
| | | 它被称为元素逻辑或运算符。 它将第一向量的每个元素与第二向量的相应元素组合,并且如果元素为真,则给出输出TRUE。 |
v <- c(3,0,TRUE,2+2i) 它产生以下结果 - TRUE FALSE TRUE TRUE |
| ! | 它被称为逻辑非运算符。 取得向量的每个元素,并给出相反的逻辑值。 |
v <- c(3,0,TRUE,2+2i) 它产生以下结果 - FALSE TRUE FALSE FALSE |
逻辑运算符&&和|| 只考虑向量的第一个元素,给出单个元素的向量作为输出。
| 运算符 | 描述 | 例 |
|---|---|---|
| && | 称为逻辑AND运算符。 取两个向量的第一个元素,并且只有两个都为TRUE时才给出TRUE。 |
v <- c(3,0,TRUE,2+2i) 它产生以下结果 - TRUE |
| || | 称为逻辑OR运算符。 取两个向量的第一个元素,如果其中一个为TRUE,则给出TRUE。 |
v <- c(0,0,TRUE,2+2i) 它产生以下结果 - FALSE |
赋值运算符
这些运算符用于向向量赋值。
| 运算符 | 描述 | 例 |
|---|---|---|
|
<− or = or <<− |
称为左分配 |
v1 <- c(3,1,TRUE,2+3i) 它产生以下结果 - 3+0i 1+0i 1+0i 2+3i |
|
-> or ->> |
称为右分配 |
c(3,1,TRUE,2+3i) -> v1 它产生以下结果 - 3+0i 1+0i 1+0i 2+3i |
其他运算符
这些运算符用于特定目的,而不是一般的数学或逻辑计算。
| 运算符 | 描述 | 例 |
|---|---|---|
| : | 冒号运算符。 它为向量按顺序创建一系列数字。 |
v <- 2:8 它产生以下结果 - 2 3 4 5 6 7 8 |
| %in% | 此运算符用于标识元素是否属于向量。 |
v1 <- 8 它产生以下结果 - TRUE |
| %*% | 此运算符用于将矩阵与其转置相乘。 |
M = matrix( c(2,6,5,1,10,4), nrow = 2,ncol = 3,byrow = TRUE) 它产生以下结果 - [,1] [,2] |
本文转自:http://codingdict.com/article/2827
R语言 运算符的更多相关文章
- R语言运算符
运算符是一个符号,它告诉编译器执行特定的数学或逻辑操作. R语言丰富的内置运算符,并提供以下类型的运算符. 运算符类型 在R编程中有以下类型的运算符 - 算术运算符 关系运算符 逻辑运算符 赋值运算符 ...
- R语言实战(二)数据管理
本文对应<R语言实战>第4章:基本数据管理:第5章:高级数据管理 创建新变量 #建议采用transform()函数 mydata <- transform(mydata, sumx ...
- R语言介绍
R语言简介 R语言是一种为统计计算和图形显示而设计的语言环境,是贝尔实验室(Bell Laboratories)的Rick Becker.John Chambers和Allan Wilks开发的S语言 ...
- R语言Data Frame数据框常用操作
Data Frame一般被翻译为数据框,感觉就像是R中的表,由行和列组成,与Matrix不同的是,每个列可以是不同的数据类型,而Matrix是必须相同的. Data Frame每一列有列名,每一行也可 ...
- R语言学习笔记:向量
向量是R语言最基本的数据类型. 单个数值(标量)其实没有单独的数据类型,它只不过是只有一个元素的向量. x <- c(1, 2, 4, 9) x <- c(x[1:3], 88, x[4] ...
- R语言编程艺术# 数据类型向量(vector)
R语言最基本的数据类型-向量(vector) 1.插入向量元素,同一向量中的所有的元素必须是相同的模式(数据类型),如整型.数值型(浮点数).字符型(字符串).逻辑型.复数型等.查看变量的类型可以用t ...
- R语言编程艺术# 矩阵(matrix)和数组(array)
矩阵(matrix)是一种特殊的向量,包含两个附加的属性:行数和列数.所以矩阵也是和向量一样,有模式(数据类型)的概念.(但反过来,向量却不能看作是只有一列或一行的矩阵. 数组(array)是R里更一 ...
- Iris的R语言命令工具箱(1)
Iris的R语言命令工具箱(1) 最近在做数据分析,使用了R语言做了些数据处理和可视化,在此记下遇到过的问题.应用过的命令.处理方式以及工具包- *版权声明:本文为博主原创文章,转载请注明本文地址.h ...
- R语言︱ 数据库SQL-R连接与SQL语句执行(RODBC、sqldf包)
要学的东西太多,无笔记不能学~~ 欢迎关注公众号,一起分享学习笔记,记录每一颗"贝壳"~ --------------------------- 数据库是极其重要的R语言数据导入源 ...
随机推荐
- ZOJ3531: [SDOI2014] 旅行
Description S国有N个城市,编号从1到N.城市间用N-1条双向道路连接,满足从一个城市出发可以到达其它所有城市.每个城市信仰不同的宗教,如飞天面条神教.隐形独角兽教.绝地教都是常见的信仰. ...
- 【读书笔记】C/C++程序员面试秘籍
第一章 C/C++ 程序基础(共12题) 第二章 预处理.const.static.和 sizeof(共27题) 第三章 引用和指针(共39题) 第四章 字符串(共31题) 第五章 位运算与嵌入式编程 ...
- java -jar 设置日志位置
使用 java -jar形式启动,设定日志的位置 语法如下: java -jar xxx.jar > xxx.log References java -jar 设置日志位置
- 项目实战-Gulp使用
引言 在工作中,经常会遇到要把文件合并和压缩等操作,我经历过下面的演进过程: 使用ajaxmin工具手动合并和压缩 使用Grunt合并和压缩 使用Gulp合并和压缩 这里不探讨Grunt和Gulp的优 ...
- hive之基本架构
什么是Hive hive是建立在Hadoop体系架构上的一层SQL抽象,使得数据相关人员是用他们最为熟悉的SQL语言就可以进行海量的数据的处理.分析和统计工作,而不是必须掌握JAVA等变成语言和具备开 ...
- echarts 报表使用
下载echats后,将下包中的js引入项目,\echarts-2.2.7\echarts-2.2.7\build\dist //在页面中建立宽高的区域,用来显示报表 <div style=&qu ...
- foreach循环的跳出
由于foreach循环中不像for循环可以直接通过return或break来终止当前循环,不过这里可以借助try...catch...来完成var arr = [1,2,3,4,5,6,7,8,9,1 ...
- Frost & Sullivan权威报告:阿里云再次领跑云WAF大中华区市场
近日,国际权威分析机构Frost & Sullivan 针对Web应用防火墙(简称“WAF”)领域发布了<2017年亚太区Web应用防火墙市场报告>,阿里云以市场占有率45.8%的 ...
- 最大流EK和Dinic算法
最大流EK和Dinic算法 EK算法 最朴素的求最大流的算法. 做法:不停的寻找增广路,直到找不到为止 代码如下: @Frosero #include <cstdio> #include ...
- BZOJ 4319: cerc2008 Suffix reconstruction(后缀数组)
题面 Description 话说练习后缀数组时,小C 刷遍 poj 后缀数组题, 各类字符串题闻之丧胆.就在准备对敌方武将发出连环杀时,对方一记无中生有,又一招顺 手牵羊,小C 程序中的原字符数组就 ...