我正在使用库(MASS)中的stepAIC()函数。
根据文档,它说我可以传递一个“对象”:
适当类别的模型。这用作初始模型 逐步搜索。
什么是合适的课程?
我使用ksvm()创建了一个模型,但是stepAIC似乎不接受它。
我正在使用代码:
stepAIC(svmFit, direction="both")
我得到了错误
Error: $ operator not defined for this S4 class
我传递的对象 svmFit 属于此类:
[1] "ksvm"
attr(,"package")
[1] "kernlab"
答案 0 :(得分:0)
我目前还不清楚接受哪种模型,但是我们可以根据来源做出一些猜测。
它需要一个可以使用$
(即通常是S3类)进行访问的模型。您的模型是S4类,因此按定义将无法使用。
此外,对于以下功能,模型类至少需要一种工作方法:formula
,terms
,update.formula
,nobs
,{ {1}},extractAIC
,deviance
(根据对源的扫描判断)。这可以是默认方法,例如update
,它可以找到stats:::formula.default
,x$formula
,$terms
或公式属性。
如果尚未实现这些方法中的一种或多种,那么它也会失败。
基本上,它对许多建模函数(例如$call$formula
和lm
)都适用许多假设。可以编写一个新的建模函数来创建与glm
兼容的模型,并且可能很难创建一个完整的列表!