【问题标题】:How to view the source code of a NMF algorithm in R?如何在 R 中查看 NMF 算法的源代码?
【发布时间】:2016-11-16 11:31:54
【问题描述】:

我是 R 的新手,我必须编写一个新的 NMF 算法,在调用函数 nmf() 时用作参数 method

作为一种开始,我想查看内置算法的源代码,如 brunet、KL、lee,但我找不到。有人可以帮帮我吗?

【问题讨论】:

  • 这是来自哪个包?

标签: r nmf


【解决方案1】:

如果您使用的是 Rstudio,在 R 脚本中,您可以按住 Ctrl 并单击它跳转到函数源的函数名称。

【讨论】:

  • 我认为它只适用于源而不是控制台......在 Rstudio 中
【解决方案2】:

您可以下载源代码here,然后检查您感兴趣的函数的代码。此外,尝试在控制台输入函数的名称。如果它是用 R 编写的,您可能会看到打印出来的整个函数。例如

f <- function(x) {return(x^2)}
f

function(x) {return(x^2)}

如果该函数是用 C/C++ 编写的,它会为您提供编译后的信息,您可以在下载的源代码中查找该函数,例如

head
function (x, ...) 
UseMethod("head")
<bytecode: 0x10a0d9158>
<environment: namespace:utils>

【讨论】:

    【解决方案3】:
    library(NMF)
    showMethods("nmf")
    
    Function: nmf (package NMF)
    x="data.frame", rank="ANY", method="ANY"
    x="formula", rank="ANY", method="ANY"
    x="matrix", rank="data.frame", method="ANY"
    x="matrix", rank="matrix", method="ANY"
    x="matrix", rank="missing", method="ANY"
    x="matrix", rank="NMF", method="ANY"
    x="matrix", rank="NULL", method="ANY"
    x="matrix", rank="numeric", method="character"
    x="matrix", rank="numeric", method="function"
    x="matrix", rank="numeric", method="list"
    x="matrix", rank="numeric", method="missing"
    x="matrix", rank="numeric", method="NMFStrategy"
    x="matrix", rank="numeric", method="NULL"
    

    接下来选择要查看源代码的方法,如

    selectMethod("nmf", c("matrix", "matrix", "ANY"))
    selectMethod("nmf", c("data.frame", "ANY", "ANY"))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-29
      • 1970-01-01
      • 1970-01-01
      • 2012-12-11
      • 2014-09-09
      • 2023-03-18
      • 2010-09-30
      相关资源
      最近更新 更多