我基本上在寻找相反的methods(some_function)
,它返回该函数存在的所有类方法。是否有一些简单的方法可以搜索对method
给定对象类具有显式的所有函数?
例如,methods(my_func)
返回一堆myfunc.classname
值。是否有一个方法functions(my_class)
可以返回所有函数func.my_class
?
问问题
132 次
2 回答
7
我认为您想为in提供一个论点class
而没有提供任何内容。相比generic.function
methods
methods(as.matrix)
[1] as.matrix.data.frame as.matrix.data.table* as.matrix.default
[4] as.matrix.dist* as.matrix.noquote as.matrix.POSIXlt
[7] as.matrix.raster* as.matrix.SpatialGridDataFrame* as.matrix.SpatialPixelsDataFrame*
有了这个,它返回泛型类的方法
methods(class="matrix")
[1] anyDuplicated.matrix as.data.frame.matrix as.data.table.matrix* as.raster.matrix* boxplot.matrix corresp.matrix*
[7] determinant.matrix duplicated.matrix edit.matrix* head.matrix isSymmetric.matrix lda.matrix*
[13] qda.matrix* relist.matrix* subset.matrix summary.matrix tail.matrix unique.matrix
Non-visible functions are asterisked
这似乎也适用于 S4 课程,例如
methods(class="data.table")
[1] $<-.data.table* [.data.table* [<-.data.table* all.equal.data.table* as.data.frame.data.table*
[6] as.data.table.data.table* as.list.data.table* as.matrix.data.table* dim.data.table* dimnames.data.table*
[11] dimnames<-.data.table* duplicated.data.table* format.data.table* head.data.table* is.na.data.table*
[16] merge.data.table* na.omit.data.table* names<-.data.table* Ops.data.table* print.data.table*
[21] subset.data.table* tail.data.table* transform.data.table* unique.data.table* within.data.table*
于 2013-04-22T13:05:39.513 回答
0
我认为您正在描述自省和反射的概念(在 Java 中众所周知)。
一篇关于 Java 中的自省和反射的帖子,这里有链接:Java 内省和反射
我不知道您使用的是哪种技术或语言,但也许您会找到等价的。
希望这可以帮助 !再见 !
于 2013-04-22T13:05:25.900 回答