R'data'不是来自'namespace:my_package'的导出对象
问题描述:
我正在写一个使用外部数据的函数,如下: 首先,它检查数据是否在data
/文件夹中,如果它不是,它会创建data
/文件夹,然后从github下载文件; 如果数据已经在data/
文件夹中,它将读取它并执行计算。R'data'不是来自'namespace:my_package'的导出对象
的问题是,当我运行:
devtools::check()
返回:
Error: 'data' is not an exported object from 'namespace:my_package'
我应该手动把某些东西上NAMESPACE
?
一个例子:
my_function <- function(x){
if(file.exists("data/data.csv")){
my_function_calculation(x = x)
} else {
print("Downloading source data...")
require(RCurl)
url_base <-
getURL("https://raw.githubusercontent.com/my_repository/data.csv")
dir.create(paste0(getwd(),"/data"))
write.table(url_base,"data/data.csv", sep = ",", quote = FALSE)
my_function_calculation(x = x)
}
}
my_function_calculation <- function(x = x){
data <- NULL
data <- suppressMessages(fread("data/data.csv"))
#Here, I use data...
return(data)
}
答
它不能在任何情况下是相同的,但我已经通过R/
文件夹中删除的文件data.R
解决了这个问题。
data.R
是一个描述软件包中所有数据的文件。自从我以前的代码版本以来,我已经拥有了它,这些数据是内置的,而不是远程的(将被下载)。 删除文件解决了我的问题。 data.R的
例子:
#' Name_of_the_data
#'
#' Description_of_the_Data
#'
#' @format A data frame with 10000 rows and 2 variables:
#' \describe{
#' \item{Col1}{description of Col1}
#' \item{Col2}{description of Col2}
#' }
"data_name"
何时以及如何准确地做到这一点的代码运行?你是否试图从你的包中导出一个名为'data'的变量?请尝试制作一个最小的[可重现的示例](https://*.com/questions/5963269/how-to-make-a-great-r-reproducible-example),以便更清楚地知道您的代码看起来像什么样因为你没有分享任何。 – MrFlick
完成!只包括它。 – Igor