我正在尝试为R包编写一个上载数据函数,并且我希望能够通过省略号将参数传递给我用来读取数据的子函数。我的功能在下面,
upload_data_excel <- function(directory_path, ...) {
# capture ellipsis
dots <- rlang::list2(...)
# list of file names for upload
file_list <- list.files(directory_path, pattern = '*.xlsx$', full.names = TRUE)
# concatenate data files
data <- file_list %>% purrr::map_dfr(~ readxl::read_excel(., !!! dots))
# clean column names
data %<>% janitor::clean_names(case = 'snake')
# output concatenated tibble
return(data)
}
有时候省略号是空的,因此我也希望在这种情况下也可以使用。我不断收到错误
Error: `sheet` must have length 1
这种方法正确吗?该错误表明我没有在read_excel函数中正确解压点。有什么想法吗?