gpt4 book ai didi

r - roxygen 中的参数类型有规范语法吗?

转载 作者:行者123 更新时间:2023-12-02 02:36:32 26 4
gpt4 key购买 nike

我将 R 与 Roxygen 一起使用。那里有 @param block ,就像 Doxygen 和 JavaDoc 中一样。由于 R 是动态类型的(甚至是鸭子类型的),因此没有像 C++ 或 Java 那样的类型信息。对于 PHP 和 Python,我发现可以在 PHPDoc 中使用 @param int $n ,并在 Sphinx(对于 Python)中使用 :param int n:

Roxygen 似乎缺乏此功能,并且各种样式指南只是描述了类型(英文)。是否有一些规范的或至少合理的方法来标准化它?

我想要获得如下信息:

  • 类的类型myClass
  • 长度为 3 的数值向量
  • 命名列表,每个列表都有特定字段

也许使用

@param x A named list with fields "a", "b", and "c" which are logical. 
These selects whether the three methods are to be used.

或者更确切地说

@param x Selectors for the methods "a", "b", and "c".
(Named list of logical).

抽象地说,有很多可能性:

  • 类型:说明。
  • 描述。类型。
  • (类型)描述。
  • ...

在 Doxygen 和 PHPDoc 中,我得到第三列(参数名称、类型、描述),但这里我只需要处理两列。这个问题可以在 R 中合理地解决吗?

最佳答案

我不确定是否存在普遍认可的标准,但一种选择是在描述包通过 data() 提供的对象时遵循 roxygen 生成的语法。

例如,如果您的包包含一个包含该对象的文件 data/myList.R

myList <- list (A = 1, B = 2, C = 3, D = 4)

那么该项目至少可以使用 roxygen 语法记录在 R/data.R

#' My List
#' @keywords datasets
"myList"

roxygen 然后会自动将对象的格式记录为

An object of class list of length 4.

在描述参数时,这个结构似乎也是一个明显的语法,尽管这必须手动完成。通用的解决方案可能是无法实现的,因为某些函数可以处理具有各种属性和类的参数。

关于r - roxygen 中的参数类型有规范语法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50063325/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com