如何重命名包中使用的数据集?

问题描述 投票:0回答:1

经过长时间的数据准备,我使用了usethis::use_data(mydata),但是改变了主意,希望我的数据集命名为MYDATA

我该怎么做?

更改文件名和文档还不够,我想这些都没关系,所有rda文件都已加载,并在构建时用数据填充了工作空间。

所以我想我可以使用load在文件上循环,创建新变量,使用save,删除以前的文件并重新运行devtools::document()

或者也许在我错过的devtoolsusethis或其他方法中有更好的方法?如果没有更好的办法,我将根据上述想法尝试自我解答。

r package devtools
1个回答
0
投票
#' 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)
© www.soinside.com 2019 - 2024. All rights reserved.