我有一系列数据框,我想另存为单独的.rda文件。
我可以使用devtools::use_data(my.df1, my.df2...)
,但每个数据框都没有命名对象,它们都存储在一个大列表中。
我想做的是为每个列表元素调用use_data,并将列表名称用作.rda文件名。但是,当我执行以下操作时,我收到一条错误消息:
> lapply(my.list, devtools::use_data, overwrite = TRUE)
Error: Can only save existing named objects
我怎样才能做到这一点?
最佳答案
use_data
函数似乎非常奇怪,实际上确实要求传递一个无引号的名称作为指向要保存的对象的参数。这不利于使用列表中的对象。但这是walk2
中的purrr
的一种可能的解决方案(尽管如果您只想使用基数R,则可以用mapply()
编写)
library(purrr)
library(devtools)
walk2(my.list, names(my.list), function(obj, name) {
assign(name, obj)
do.call("use_data", list(as.name(name), overwrite = TRUE))
})
关于r - 如何在数据框列表上使用devtools::use_data?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49673667/