美文网首页
2021-03-21R语言中的管道符 %>%

2021-03-21R语言中的管道符 %>%

作者: 阿乜太帅 | 来源:发表于2021-03-21 14:50 被阅读0次

作为R语言基础之一的 %>% 应用非常广泛,但是我却一直没有系统地学习,实在不应该,今天研究记述一下。

什么是%>%

%>% 作为一种管道符,意思是 %>% 把左边的输出传递给右边的函数作为输入。最早来自于R包magrittr,magrittr包是一个高效的专业管道操作工具包,主要定义了4个管道操作符,分另是%>% 向右操作符(forward-pipe operator), %T>% 向左操作符(tee operator), %$% 解释操作符(exposition pipe-operator) 和 %<>% 复合赋值操作符(compound assignment pipe-operator)。其中%>%最为常用,有机会再聊其它三个,今天只说%>%
R包 dplyr 调用了 magrittr 包,这就是为什么很多用到 %>% 时都会调用 dplyr 的原因。

怎么用%>%

%>%的使用异常简单,就是左边传递给右边,近似shell中的“ | ” ,需要注意要与shell的输出重定向“ > ”相区分,话不多说直接上示例:

library(dplyr)  #调用依赖
#分步法示例
data <- rep(4,4)  #定义输入数据四个四
unidata <- unique(data)   #进行去重
unidata
[1] 4
#管道符使用示例
pipeunidata <- rep(4,4) %>% unique() #输入数据去重
# 可以理解为 rep(4,4)的输出传递给了unique(),然后去重之后结果赋值为 pipeunidata
pipeunidata #可见结果与分步法一致
[1] 4

可以很明显的看出使用管道符之后,步骤被简化了,一步就得到了去重之后的数据,这就引出了管道符的价值。

为啥用%>%

R语言的每次赋值都会占用相应的内存,管道符的使用可以有效减少赋值以减少内存占用。另外,代码的简化也会带来相应的美感和可读性。

相关文章

  • 2021-03-21R语言中的管道符 %>%

    作为R语言基础之一的 %>% 应用非常广泛,但是我却一直没有系统地学习,实在不应该,今天研究记述一下。 什么是%>...

  • R语言中的管道符%>%

    与linux中的管道符(|)功能相似,都可以进行数据信息的传递。 %>%:来自dplyr包的管道函数,我们可以将其...

  • R语言也有管道符%>%

    在linux系统中我门常用‘|’管道符将上一条命令的输出,作为下一条命令的输入。 在R语言中与存在类似的管道符号,...

  • 管道符/shell变量/环境变量配置文件

    8.6 管道符和作业控制 管道符“|” 管道符的作用在于将符号前面的结果丢给符号后面的命令。管道符后面并不是所有的...

  • 管道符和作业控制、shell变量、环境变量配置文件

    目录 一、管道符和作业控制二、shell变量三、环境变量配置文件 一、管道符和作业控制 管道符管道符|,它用于将前...

  • linux三剑客与管道

    一:什么是管道? linux提供管道符“|”将两个命令隔开,管道符左边命令的输出就会作为管道符右面命令的输入 什么...

  • 16. Linux 管道符( ‘|’ )

    利用Linux所提供的管道符“|”将两个命令隔开,管道符左边命令的输出就会作为管道符右边命令的输入。连续使用管道意...

  • 管道符和作业控制、shell变量、环境变量配置文件

    86 管道符和作业控制 管道符、作业控制| 管道符 把前一个命令的结果传递给后一个命令 87 shell变量...

  • 2018-10-14

    10月12日任务 8.6管道符和作业控制 grep用于过滤 管道符是指 输出前一个命令的内容 然后通过管道符 交给...

  • ubuntu 批量杀死包含指定名称的进程

    执行命令 其中:|管道符,用来隔开两个命令,管道符左边命令的输出会作为管道符右边命令的输入。ps命令用来列出系统中...

网友评论

      本文标题:2021-03-21R语言中的管道符 %>%

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