美文网首页软件
R语言中%||%是什么意思?

R语言中%||%是什么意思?

作者: 生信交流平台 | 来源:发表于2020-09-27 15:39 被阅读0次

不知道大家有没有在R代码中见到过这样的运算符号%||%,看上去有点像或,却又不是。

%||%实际上是rlang这个包中的一个函数,我们来看看它的定义


rlang::`%||%`

function (x, y)

{

    if (is_null(x))

        y

    else x

}

看到这个定义我相信大多数人都能够明白了,也就是这个函数有两个参数,当第一个参数x不为NULL的时候,返回的值就是x,如果x为NULL那么就会返回第二个参数y的值。有点三目运算符的味道。我们来看一个具体的例子


library(rlang)

1 %||% 2

#[1] 1

NULL %||% 2

#[1] 2

其实在其他的一些R包里面这个函数用到的也很多,比如ggplot2这个包里面就用到了


    function (data, params)

{

    hjust <- params$hjust %||% 0.5

    vjust <- params$vjust %||% 0.5

    w <- resolution(data$x, FALSE)

    h <- resolution(data$y, FALSE)

    datax - w * (1 - hjust)

    datax + w * hjust

    datay - h * (1 - vjust)

    datay + h * vjust

    data

}

还有分析单细胞测序数据的Seurat这个包里面也用到了


DimHeatmap <- function(

  object,

  dims = 1,

  nfeatures = 30,

  cells = NULL,

  reduction = 'pca',

  disp.min = -2.5,

  disp.max = NULL,

  balanced = TRUE,

  projected = FALSE,

  ncol = NULL,

  fast = TRUE,

  raster = TRUE,

  slot = 'scale.data',

  assays = NULL,

  combine = TRUE

) {

  ncol <- ncol %||% ifelse(test = length(x = dims) > 2, yes = 3, no = length(x = dims))

  plots <- vector(mode = 'list', length = length(x = dims))

  assays <- assays %||% DefaultAssay(object = object)

  disp.max <- disp.max %||% ifelse(

    test = slot == 'scale.data',

    yes = 2.5,

    no = 6

  )

R语言中%||%是什么意思?

相关文章

  • R语言中%||%是什么意思?

    不知道大家有没有在R代码中见到过这样的运算符号%||%,看上去有点像或,却又不是。 %||%实际上是rlang这个...

  • R programming - WEEK4

    参考文献 R语言实例-数据过滤grep正则表达式R 语言中,数据框依据不同列进行排序R语言rank函数详细解析R语...

  • Day 110/200 macOS -rw-r--r--是什么

    从大学开始,一直不明白,文件权限是什么意思?知道改变权限用chmod 777,但-rw-r--r--是什么意思呢 ...

  • 学习小组Day5笔记-pf

    先回答几个问题 R的赋值符号是啥? R的代码都是带括号的吗? 显示工作路径的代码是什么? 表格在R语言中又叫什么?...

  • Dart 语言中 RegExp 中的r的意思

    ``` var reg = RegExp(r'\d+');``` the use of araw string(a...

  • R中{{}}是什么意思?

    When you have the data-variable in a function argument (i...

  • C语言中->是什么意思啊?

    ->是一个整体,它是用于指向结构体、C++中的class等含有子数据的指针用来取子数据。换种说法,如果我们在C语言...

  • C语言中%X是什么意思

    %a,%A 读入一个浮点值(仅C99有效) %c 读入一个字符 %d 读入十进制整数 %i 读入十进制,八进制,十...

  • 一语成谶

    谶chen,迷信的人指将要应验的预言、预兆。一语成谶,意思是不幸而言中。

  • R语言中的switch函数用法

    R语言中的switch与其它语言中的switch有很大区别。 在R中,switch函数的语法形式如下: 其中,ex...

网友评论

    本文标题:R语言中%||%是什么意思?

    本文链接:https://www.haomeiwen.com/subject/bhkluktx.html