自动化数据分析工作流程 我的
packagename.R
文件夹中的 packagename
文件中有以下代码。
我知道我将定期使用其他包中的某些函数,所以我想导入它们一次,而不是到处输入它们。我认为我应该能够通过上述方法做到这一点,但它在我的 RStudio 中不起作用。
#' packagename: Package containing tools support project work.
#'
#' This package provides a central repository for methods to facilitate
#' project work
#' @importFrom dplyr bind_rows mutate filter group_by ungroup
#' @importFrom purrr pluck map map_chr map_dbl
#' @importFrom lubridate ymd_hms
#' @importFrom odbc odbc
#' @importFrom DBI dbConnect dbDisconnect
#' @importFrom stringr str_detect str_replace_all
#' @docType package
#' @name packagename
NULL
在另一个文件中
topic.R
我有:
do_thing <- function(x) str_replace_all(x, " ", "_"))
当我打电话给
do_thing
时,它告诉我:
Error in str_replace_all(x, " ", "_") :
could not find function "str_replace_all"
还有什么我需要补充的吗,或者我应该做一些不同的事情吗?
根据对问题的评论,我至少需要重新生成我的
NAMESPACE
,这显然是手动生成的(因为我使用 RStudio GUI 启动了该项目),所以 roxygen
不会更新它。我也对如何从 UI 中执行此操作感兴趣。
这就是我的构建菜单的样子:
我的
NAMESPACE
文件包含这些导入,但在尝试运行这些函数时我的测试脚本仍然失败。难道这不可能像 C. Braun 所建议的那样吗?
我就是这样做的:
#' @title External functions
#'
#' @description NA
#'
#' @rdname external_functions
#' @name external_functions
NULL
#' @rdname external_functions
#' @export
#' @importFrom lubridate ymd_hms
lubridate::ymd_hms
等等