mat*_*fee 54
我能想到的最接近的是methods
(如果是S3对象/功能List all available methods for an S3 generic function, or all methods for a class.
),或者showMethods
(如果是S4).
例如:
> A <- matrix(runif(10))
> B <- methods(class=class(A))
> B
[1] anyDuplicated.matrix as.data.frame.matrix as.raster.matrix*
[4] boxplot.matrix determinant.matrix duplicated.matrix
[7] edit.matrix* head.matrix isSymmetric.matrix
[10] relist.matrix* subset.matrix summary.matrix
[13] tail.matrix unique.matrix
Non-visible functions are asterisked
> attr(B,'info')
visible from
anyDuplicated.matrix TRUE package:base
as.data.frame.matrix TRUE package:base
as.raster.matrix FALSE registered S3method
boxplot.matrix TRUE package:graphics
determinant.matrix TRUE package:base
duplicated.matrix TRUE package:base
edit.matrix FALSE registered S3method
head.matrix TRUE package:utils
isSymmetric.matrix TRUE package:base
relist.matrix FALSE registered S3method
subset.matrix TRUE package:base
summary.matrix TRUE package:base
tail.matrix TRUE package:utils
unique.matrix TRUE package:base
Run Code Online (Sandbox Code Playgroud)
或者功能:
> methods(summary)
[1] summary.aov summary.aovlist summary.aspell*
[4] summary.connection summary.data.frame summary.Date
[7] summary.default summary.ecdf* summary.factor
[10] summary.glm summary.infl summary.lm
[13] summary.loess* summary.manova summary.matrix
[16] summary.mlm summary.nls* summary.packageStatus*
[19] summary.PDF_Dictionary* summary.PDF_Stream* summary.POSIXct
[22] summary.POSIXlt summary.ppr* summary.prcomp*
[25] summary.princomp* summary.srcfile summary.srcref
[28] summary.stepfun summary.stl* summary.table
[31] summary.tukeysmooth*
Non-visible functions are asterisked
Run Code Online (Sandbox Code Playgroud)
?Methods
也可能证明是有用的阅读.
42-*_*42- 12
R对象的类被恢复class
.在典型的R术语中,对象没有与它们相关的方法.对象的类确定将应用于哪些函数方法.为了确定哪些函数具有与给定类关联的方法,您需要测试所有可用函数以查看是否存在特定于类的方法.即使这样,通用函数也会尝试在大多数情况下使用"默认"方法.
显示与通用S3功能相关的一些方法methods
.恢复S4功能的方法showMethods
.因此,对于大多数人称之为"对象"的问题,你的问题没有意义,但如果碰巧你在一般术语"对象"(这在技术上是公平的)下包含函数,那么我已经回答了.
showMethods(classes="data.frame")
methods(class="data.frame")
Run Code Online (Sandbox Code Playgroud)
然后有一组方法可能被称为"隐式",尽管它们的R名称是"groupGeneric"
?groupGeneric
methods("Math") # These are "add-on" methods to the primitive Math functions
[1] Math.data.frame Math.Date Math.dates* Math.difftime Math.factor
[6] Math.mChoice Math.polynomial* Math.POSIXt Math.ratetable* Math.Surv*
[11] Math.times*
Non-visible functions are asterisked
?"+"
methods("Ops") # The binary operators such as "+", "-", "/"
[1] Ops.data.frame Ops.Date Ops.dates* Ops.difftime Ops.factor
[6] Ops.findFn Ops.mChoice Ops.numeric_version Ops.ordered Ops.polynomial*
[11] Ops.POSIXt Ops.raster* Ops.ratetable* Ops.Surv* Ops.times*
[16] Ops.ts* Ops.unit* Ops.yearmon* Ops.yearqtr* Ops.zoo*
Non-visible functions are asterisked
Run Code Online (Sandbox Code Playgroud)
即便如此,您还没有真正展示Math或Ops系列的成员,但您可以在帮助页面中看到它们?groupGeneric.你没有看到Ops.numeric.较低级别的视图由以下提供:
.Primitive("+")
# function (e1, e2) .Primitive("+")
Run Code Online (Sandbox Code Playgroud)
如果提供了错误的类参数,这些将抛出错误.