加载rasterVis会导致data.table的shift()出现问题。如何从R中完全删除已加载的包?

时间:2016-03-15 19:01:40

标签: r data.table

当我尝试在shift中使用data.table时,如果已加载包rasterVis,则会出现此错误:

Error in (function (classes, fdef, mtable)  : 
  unable to find an inherited method for function ‘shift’ for signature ‘"integer"’

例如,这完美无缺:

library(data.table)
# library(rasterVis)
DT <- data.table(a = 1:50)
DT[, lagged.a := shift(a, 12, type = 'lag')]

但是这不是,即使我尝试卸载包裹:

library(data.table)
library(rasterVis)
DT <- data.table(a = 1:50)
DT[, lagged.a := shift(a, 12, type = 'lag')] # ERROR
detach('package:rasterVis', unload = TRUE) # or
unloadNamespace(rasterVis)
library(data.table) # I reload data.table, but still nothing
DT[, lagged.a := shift(a, 12, type = 'lag')] # still ERROR

我显然可以将与班次相关的线路运行到新的R环境,但我很好奇我是否可以在不这样做的情况下修复它。

0 个答案:

没有答案