当我尝试在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环境,但我很好奇我是否可以在不这样做的情况下修复它。