有没有办法在一串管道dplyr函数中包含对write.csv的调用?
library(dplyr)
mtcars %>%
filter(cyl == 4) %>%
write.csv(file = "firstStage.csv") %>%
group_by(carb) %>%
summarise(hp.sum = sum(hp)) %>%
write.csv(file = "secondStage.csv")
Run Code Online (Sandbox Code Playgroud)
我可以创建自己的函数:
csv2go <- function(x, ...) {
write.csv(x, ...)
x
}
Run Code Online (Sandbox Code Playgroud)
但是想知道在base或dplyr中是否存在这样的事情.也许write_csv()函数library(readr)可以采用这个选项?
hac*_*ckR 10
非常简单!!!您需要做的就是添加单个字符"T"以将常规管道运算符%>%转换为Tee管道运算符%T>%,如下所示:
library(dplyr)
mtcars %>%
filter(cyl == 4) %T>% # <== Tee-pipe operator
write.csv(file = "firstStage.csv") %>%
group_by(carb) %>%
summarise(hp.sum = sum(hp)) %>%
write.csv(file = "secondStage.csv")
Run Code Online (Sandbox Code Playgroud)
%T>%是你的新朋友