基础库中的任何通用函数是否在矩阵上调度?

问题描述

我遇到了一些麻烦writing some code that dispatches on matrices。为了帮助我,我想看看基本库中的哪些泛型函数在矩阵上调度。有没有办法让 R 给我一个列表?否则,有谁知道该列表中的任何成员吗?

解决方法

在基 R 中至少有七个函数具有矩阵泛型:

  • anyDuplicated
  • determinant
  • duplicated
  • isSymmetric
  • subset
  • summary
  • unique

你可以得到它们

getS3method("anyDuplicated",class="matrix")

或者只是

anyDuplicated.matrix

发现使用

Filter(function(x) {
  !is.null(getS3method(x,class="matrix",optional=TRUE))
},ls(all.names=TRUE,env = baseenv()))