如何在R中调用特定的S4方法

时间:2015-05-20 18:56:29

标签: r

我在R的mirt包中工作,注意到我无法使用mirt::mirt:::来呼叫coef或{{1} } 功能。据我所知,这是一个S3到S4的差异(魔术手指和手挥动)。

这让我想到了这个问题,当你在S4编码时,如何在它的包中调用特定的R函数?

1 个答案:

答案 0 :(得分:2)

> library(mirt)
Loading required package: stats4
Loading required package: lattice

我看到了

> methods(coef)
 [1] coef,ANY-method                coef,DiscreteClass-method     
 [3] coef,MixedClass-method         coef,mle-method               
 [5] coef,MultipleGroupClass-method coef,SingleGroupClass-method  
 [7] coef,summary.mle-method        coef.aov*                     
 [9] coef.Arima*                    coef.default*                 
[11] coef.listof*                   coef.nls*                     
see '?methods' for accessing help and source code

我猜你有一个类的实例,例如'DiscreteClass'。您可以使用

选择方法
selectMethod("coef", signature="DiscreteClass")

或者更自然地

selectMethod("coef", class(obj))

其中obj是您感兴趣的对象的实例。但您不必调用特定方法;这应该照顾 - 你实际遇到的问题是什么。