我做了一个函数在磁盘上写一个文本文件
fun <- function(text, name){ writeLines(text, name) }
但是当我尝试通过purrr::pmap使用它时,它给出空列表作为输出:
purrr::pmap
pmap(list(text = c("test1", "test2"), name = c("1.txt", "2.txt")), fun) [[1]] NULL [[2]] NULL
如何抑制?
njthzxwz1#
虽然walk函数肯定是首选,但严格地回答您的问题,i。例如“suppress NULL output after using map”,我们可以使用invisible。我用mapply发布了这个,但它也适用于你的代码。
walk
invisible
mapply
invisible(mapply(fun, text = c("test1", "test2"), name = c("1.txt", "2.txt")))
4bbkushb2#
walk函数就是为此目的而设计的,这里我们可以使用pwalk。来自?pmap的文档walk()返回输入。x(不可见)。这使得它易于在管道中使用。的返回值。f()被忽略。
pwalk
?pmap
library(purrr) pwalk(list(text = c("test1", "test2"), name = c("1.txt", "2.txt")), fun)
2条答案
按热度按时间njthzxwz1#
虽然
walk
函数肯定是首选,但严格地回答您的问题,i。例如“suppress NULL output after using map”,我们可以使用invisible
。我用mapply
发布了这个,但它也适用于你的代码。4bbkushb2#
walk
函数就是为此目的而设计的,这里我们可以使用pwalk
。来自?pmap
的文档walk()返回输入。x(不可见)。这使得它易于在管道中使用。的返回值。f()被忽略。