经过长时间的数据准备,我使用了usethis::use_data(mydata)
,但是改变了主意,希望我的数据集命名为MYDATA
。
我该怎么做?
更改文件名和文档还不够,我想这些都没关系,所有rda文件都已加载,并在构建时用数据填充了工作空间。
所以我想我可以使用load
在文件上循环,创建新变量,使用save
,删除以前的文件并重新运行devtools::document()
?
或者也许在我错过的devtools,usethis或其他方法中有更好的方法?如果没有更好的办法,我将根据上述想法尝试自我解答。
#' rename package datasets
#'
#' Assuming `usethis::use_data()` was used, rename one or several datasets.
#'
#' @param ... One or more unquoted names, in the form `new_name = old_name`
rename_data <- function(...){
args <- eval(substitute(alist(...)))
env <- new.env()
for(i in seq_along(args)){
old_nm <- as.character(args[[i]])
new_nm <- as.character(names(args)[[i]])
old_path <- here::here("data", paste0(old_nm, ".rda"))
new_path <- here::here("data", paste0(new_nm, ".rda"))
load(old_path,env)
assign(new_nm, eval(args[[i]],env), envir = env)
file.remove(old_path)
save(list=new_nm, file = new_path, envir = env)
}
invisible()
}
rename_data(NEW_DATA = old_data)