rbind 出错,找不到对象

Error in rbind, object not found

编辑:如下所示,我可以提供一个示例,但我认为问题不在代码中,而是与环境相关的问题,因为当我将代码加载到 GlobalEnvironment 中时,代码运行良好,但是当我从我的包中加载它时出现此错误。 话虽如此,在这里加载2个数据帧根本没有帮助。

我有一个简单的函数,它导入一个 csv,过滤几个变量,并将它与一个已经存在于全局环境中的 data.frame 合并。

#' Imports file and merges
#' @export
#'

funcTest <- function(x = NULL, m, Q){

    # Imports file
    df1 <- fread(x, header = TRUE, sep = ",", stringsAsFactors = TRUE,
                           integer64 = "numeric")

    # Create Filter
    df1 <- df1 %>%
      select(ORIGIN, DEST, ORIGIN_CITY_MARKET_ID, DEST_CITY_MARKET_ID,
             PASSENGERS, QUARTER) %>%
      filter(PASSENGERS > 0, QUARTER == Q) %>%
      select(ORIGIN, DEST, ORIGIN_CITY_MARKET_ID, DEST_CITY_MARKET_ID, PASSENGERS)


  # Merges df1 with df2
  df2 <- df2 %>%
    select(ORIGIN, DEST, ORIGIN_CITY_MARKET_ID, DEST_CITY_MARKET_ID, PASSENGERS)

dfbind <- rbind(df2,df1)

  dfbind <<- dfbind

}

注:m为已经存在的data.frame,Q为过滤变量

但是我 运行 进入错误说 df1 不存在。 如果我 运行 来自 .GlobalEnv 的函数,一切正常。如果它在我的包裹上,我得到这个。发生这种情况的原因是什么?

看起来答案很简单,而且与代码本身无关。阅读上面的一些评论后,我意识到 data.table 和 dplyr 包都没有正确加载到命名空间中。 这带来了我之前看到的错误。

这是一个比我想象的更常见的错误,但经常会发生永远无法找到解决方案的情况。因此,对于那些有同样问题的人,我强烈建议在查看您正在使用的函数之前检查 NAMESPACE 文件。