R语言运算符知识点讲解

运算符

运算符:包含一个或者两个参数的无括号的参数

符号 说明
+
-
*
^
%% 取模运算
%/% 整除运算

可以定义自己的二元运算符

`%myop%` = function(a, b){
 2*a + 2*b
}
> 1 %myop% 1
[1] 4

一些特殊的语言结构也是二元运算符

例如:赋值运算符<-,索引[],函数调用max(a, b)

运算顺序

运算符的优先级 (按优先级排序)

运算符 描述
({ 函数调用和分组表达式
[ [[ 索引
:: ::: 访问命名空间中的变量
$ @ 成分/序列提取
^ 求幂运算
- + 一元负号和正号
: 序列运算符
%any% 特殊运算符
*/ 乘法,除法
+ - 二元加,减
< > <= >= == != 关系运算符
! & && | || 逻辑运算符
~ 公式连接符
-> ->> 向右赋值
= 从右至左赋值
<- <<- 从右至左赋值
? 帮助

赋值操作

R中还有一类赋值操作语句,其赋值操作符的左端是一个函数

将一个对象替换为一个属性略有不同的对象

x = 1
y = list(shoes = "loafers", hat = "Yankees cap", shirt = "white")
z = function(a, b, c){
 a^b/c
}
v = c(1 ,2, 3, 4, 5 ,6, 7, 8)
dim(v) = c(2, 4)
> v
   [,1] [,2] [,3] [,4]
[1,]  1  3  5  7
[2,]  2  4  6  8
> v[2, 2] = 10
> v
   [,1] [,2] [,3] [,4]
[1,]  1  3  5  7
[2,]  2  10  6  8
> formals(z) = alist(a=1, b=2, c=3)
> z
function (a = 1, b = 2, c = 3)
{
  a^b/c
}

后台的操作形如

fun(sym) = val

实际是如下形式的函数的语法糖

`fun<-`(sym, val)

这些函数会替换当前环境中与sym相关的对象.

通常fun指向的是由sym表示的对象的属性.

如果写了一个名为method_name<-的方法,R中允许将method_name<-放在赋值语句的左端

到此这篇关于R语言运算符知识点讲解的文章就介绍到这了,更多相关R语言运算符内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • R语言运算符知识点讲解

    运算符 运算符:包含一个或者两个参数的无括号的参数 符号 说明 + - * ^ %% 取模运算 %/% 整除运算 可以定义自己的二元运算符 `%myop%` = function(a, b){ 2*a + 2*b } > 1 %myop% 1 [1] 4 一些特殊的语言结构也是二元运算符 例如:赋值运算符<-,索引[],函数调用max(a, b) 运算顺序 运算符的优先级 (按优先级排序) 运算符 描述 ({ 函数调用和分组表达式 [ [[ 索引 :: ::: 访问命名空间中的变量 $ @ 成

  • 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 <

  • R语言向量知识点及实例讲解

    有常见的六种基本的向量类型 创建向量 设定recursive = T,c函数可以从其他数据结构中递归形成向量 > v <- c(.295, .300, .250, .287, list(.102, .200, .303), recursive = T) > v [1] 0.295 0.300 0.250 0.287 0.102 0.200 0.303 > typeof(v) [1] "double" > v <- c(.295, .300, .250

  • R语言矩阵知识点总结及实例分析

    矩阵是其中元素以二维矩形布局布置的R对象. 它们包含相同原子类型的元素. 虽然我们可以创建一个只包含字符或只包含逻辑值的矩阵,但它们没有太多用处. 我们使用包含数字元素的矩阵用于数学计算. 使用matrix()函数创建一个矩阵. 语法 在R语言中创建矩阵的基本语法是 matrix(data, nrow, ncol, byrow, dimnames) 以下是所使用的参数的说明 数据是成为矩阵的数据元素的输入向量. nrow是要创建的行数. ncol是要创建的列数. byrow是一个逻辑线索. 如果

  • R语言控制结构知识点总结

    if(condition) true_expression else false_expression if(condition) expression 因为表达式expression, true_expression, false_expression并非总是被执行,因此if函数的类型是special > typeof(`if`) [1] "special" 在R中.条件语句不是向量型运算 如果条件语句是由一个以上的逻辑值组成的向量,那么执行语句时只会用到向量中的第一个元素 x

  • R语言表达式知识点总结

    R提供的组合表达式的结构: 分号 括号 花括号 分离型表达式 x = 1 y = 2 z = 3 x = 1; y = 2; z = 3 括号 括号会返回括号内表达式的执行结果 花括号 花括号用于执行一些列表达式(由换行符或者分号隔开),并返回最后一个表达式的执行结果 {expression_1; expression_2; ... ; expression_ } (笔记:函数花括号内的符号相当于局部变量) 花括号的底层操作是调用{} 到此这篇关于R语言表达式知识点总结的文章就介绍到这了,更多相

  • R语言常量知识点总结

    R语言基本的数据类型有数值型, 逻辑型(TRUE, FALSE),文本(字符串). 支持缺失值,有专门的复数类型. 常量是指直接写在程序中的值. 数值型常量包括整型.单精度.双精度等,一般不需要区分.写法如123, 123.45, -123.45, -0.012, 1.23E2, -1.2E-2等. 为了表示123是整型,可以写成123L. 字符型常量用两个双撇号或两个单撇号包围,如"Li Ming"或'Li Ming'. 字符型支持中文,如"李明"或'李明'. 国

  • linux命令行下使用R语言绘图实例讲解

    使用系统:centos 6.4 64bit 在R语言中可以使用png()等函数生成图片,例如: png("aa.png")可以生成图片. 但是如果你是通过shell远程连接到系统上,可能会碰到如下错误: > png("aa.png") 错误于.External2(C_X11, paste("png::", filename, sep = ""), g$width,  :    无法打开PNG设备 此外: 警告信息: In

  • R语言时间序列知识点总结

    时间序列对象:变量随着时间变化 时间序列的回归函数(例如ar或arima)通常以时间序列作为参数 许多绘图函数都有针对时间序列对象的特殊方法 ts函数创建时间序列对象 ts(data = NA, start = 1, end = numeric(0), frequency = 1, deltat = 1, ts.eps = getOption("ts.eps"), class = , names = ) data参数指定时间序列的观测值,其他参数指定观测值的起始区间 ts函数参数的含义

  • R语言符号知识点汇总

    符号 当在R中定义一个变量时,实际上就是在环境中将一个符号赋给一个值 x <- 1 实际上就是在全局环境中将符号x赋给一个长度为1,值为1的向量对象 当R解释器对表达式求值时,它会处理所有的符号 如果将若干个符号组合成一个对象,R会解析成该对象的每个符号 > x <- 1 > y <- 2 > z <- 3 > > (v <- c(x, y, z)) [1] 1 2 3 > > #由于v已定义,更改x的值并不会使v的值也相应变化 &g

随机推荐