如何将命名现有对象的字符向量传递给仅接受现有对象未引用名称的函数?
devtools::use_data(..., )
?use_data: ... Unquoted names of existing objects to save.
例如,?save()提供了一个替代接口:
base::save(..., list=, )
?save: list A character vector containing the names of objects to be saved.
示例:
x <- "hello"
y <- "world"
save(x, y, file="./test.rda") # works fine
save(c("x", "y"), file="./test.rda")
>> Error in save(c("x", "y"), file = "./test.rda") : Objekt ‘c("x", "y")’ nicht gefunden
我确定已经多次询问并回答了这个问题,但是我找不到解决方案。我未成功尝试使用常见的嫌疑人as.name(),noquote(),get(),eval(),parse(),alternate()等。
我最近的是
unquote(c("x", "y")
感谢您的帮助或重定向
答案 0 :(得分:1)
这将是基于@Moody_Mudskipper的评论的答案
x <- "hello"
y <- "world"
obj <- c("x", "y")
do.call(save, c(lapply(obj, as.name), file="./test.rda"))
使用devtools :: use_data()的模拟