我有一组R脚本定义了一个S3类,它使用不同的方法,模型类型和成本函数搜索大的协变量空间。为了可视化搜索的进度,我定义了一些特定于类的绘图方法,并使用方法调度来确保类看到正确的函数。具体来说,我将绘图方法定义为plot.fs_forward_model
等。我还有一个文件,其方法调度函数定义为,例如,plot = function(x, ...) UseMethod('plot', x)
这一切都很棒,我的课程以这种方式运作良好。但是,当我使用glmnet并且我想创建套索结果的图时,我得到的错误似乎源于我的方法调度线。回溯看起来像这样:
4 stop("'x' is a list, but does not have components 'x' and 'y'")
3 xy.coords(x, y, xlabel, ylabel, log)
2 plot.default(llr) at FS_MethodDispatch.R#14
1 plot(llr)
第1行是我对调用glmnet产生的glmnet对象的调用,即llr=glmnet(x, y, family='gaussian')
非常感谢有关如何确保我的方法发送不会干扰其他包的任何提示。