【问题标题】:R Roxygen2: How to document a function generated by another function?R Roxygen2:如何记录另一个函数生成的函数?
【发布时间】:2015-05-29 11:43:21
【问题描述】:

在我的包中,我编写了一个函数,它将一个函数作为输入并产生另一个函数。如何记录通过这样的程序产生的函数?

下面是一个例子:使用函数将sin()(接受弧度输入)转换为sind(),以度为单位输入。

rad2deg <- function(f) {
  force(f)
  function(x) f(x / 180 * pi)
}

这里是下面函数的一些文档...

sind <- rad2deg(sin)

rad2deg 只是我的实用功能,只有我自己使用,因此没有导出或记录。我只需要导出sind。但我不知道它是如何做到的,因为它甚至没有被识别为一个函数,它甚至没有一个明确的参数(当然它隐含地接受了sin 函数的参数)。所以,连@param标签都不能用了。

有人知道吗?

【问题讨论】:

    标签: r roxygen2


    【解决方案1】:

    它有效。以下代码为sind 函数生成一个Rd 文件和NAMESPACE 指令。

    rad2deg <- function(f) {
      force(f)
      function(x) f(x / 180 * pi)
    }
    
    #' sin for degrees
    #' @param x an angle in degrees
    #' @return sin(x)
    #' @export
    sind <- rad2deg(sin)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-16
      相关资源
      最近更新 更多