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 文件。
编辑:如下所示,我可以提供一个示例,但我认为问题不在代码中,而是与环境相关的问题,因为当我将代码加载到 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 文件。