将中间输出分配给临时变量作为dplyr管道的一部分
发布时间:2020-05-23 11:45:14 所属栏目:程序设计 来源:互联网
导读:问:在R dplyr管道中,如何将一些中间输出分配给临时变量以便在管道中进一步使用? 我的方法可行.但它分配到全球框架,这是不可取的.必须有更好的方法,对吗?我认为我的方法涉及评论行将获得预期的结果.没有骰子.困惑为什么不起作用. df - data.frame(a = LETTE
|
问:在R dplyr管道中,如何将一些中间输出分配给临时变量以便在管道中进一步使用? 我的方法可行.但它分配到全球框架,这是不可取的.必须有更好的方法,对吗?我认为我的方法涉及评论行将获得预期的结果.没有骰子.困惑为什么不起作用. df <- data.frame(a = LETTERS[1:3],b=1:3)
df %>%
filter(b < 3) %>%
assign("tmp",.,envir = .GlobalEnv) %>% # works
#assign("tmp",.) %>% # doesn't work
mutate(b = b*2) %>%
bind_rows(tmp)
a b
1 A 2
2 B 4
3 A 1
4 B 2
pipeR是一个扩展管道功能而不添加不同管道的软件包(正如magrittr所做的那样).要分配,您传递一个变量名称,在括号中用引用作为管道中的元素:
library(dplyr) library(pipeR) df %>>% filter(b < 3) %>>% (~tmp) %>>% mutate(b = b*2) %>>% bind_rows(tmp) ## a b ## 1 A 2 ## 2 B 4 ## 3 A 1 ## 4 B 2 tmp ## a b ## 1 A 1 ## 2 B 2 虽然语法不是非常具有描述性,但pipeR是very well documented. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
