我如何使用@importFrom以便它适用于整个R包?

时间:2018-02-15 22:19:22

标签: r r-package roxygen2

自动数据分析工作流程 我在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中执行此操作感兴趣。

这就是我的构建菜单:

RStudio Build Menu

我的NAMESPACE文件包含这些导入,但在尝试运行这些函数时,我的测试脚本仍然失败。这不可能像C.Braun所说的那样吗?

0 个答案:

没有答案