gpt4 book ai didi

r - 使用 roxygen2 R CMD 检查 codoc 不匹配警告记录引用类

转载 作者:行者123 更新时间:2023-12-01 23:30:36 25 4
gpt4 key购买 nike

我正在尝试使用 roxygen2 为引用类对象制作文档,但当我运行 R CMD 检查时,我不断收到此警告:

  S4 class codoc mismatches from documentation object 'myRefClass-class':
Slots for class 'myRefClass'
Code: .xData
Inherited: .xData
Docs: field1 field2

这是与上述警告相关的 ref 类和 roxygen2 block :

#' @title myRefClass class
#' @description Description of myRefClass
#' @import methods
#' @exportClass myRefClass
#' @slot field1 A character slot
#' @slot field2 A numeric slot
myRefClass<-setRefClass(Class="myRefClass",
fields=list(field1="character",
field2="numeric"))

这是生成的 R 文档:

myRefClass-class {testPackaging} R Documentation myRefClass class

Description

Description of myRefClass

Slots

field1 A character slot

field2 A numeric slot

至于我能找到的文档,codoc正在测试我的代码和文档之间的一致性。据我所知,所有插槽名称都是相同的;也许我错过了一些东西。不确定文档是否应该自动将其标记为引用类,或者我是否应该以某种方式表明这一点?我发现 R 文档表明插槽“.xData,用于启用异常类型的继承”,但我不确定为什么它适用于我在这里所做的事情,或者我是否应该用它做一些事情。

我已经尝试了 roxygen 标签的多种排列,并保持接近此处找到的结构似乎为我提供了来自 R CMD 检查的最佳结果/最少警告:Roxygen2 - how to @export reference class generator?我一直在网上寻找有关如何将 roxygen2 与引用类一起使用的示例;也许我找错了地方——我运气不太好。

我正在使用 roxygen2 v 3.1.0/RStudio 版本 0.98.501/R 版本 3.0.3/OSX 10.9.2(注意:尝试升级到 roxygen2 v 4.0,它完全被引用类阻塞,以至于根本没有生成任何文档)

如果有人知道使用 roxygen2 和引用类的 CRAN 包,这样我就可以看到它是如何正确完成的,或者如果有人知道我做错了什么,我将不胜感激。我是 R 中软件包构建的新手。

最佳答案

我通常使用@section Fields,所以在这种情况下:

#' @title myRefClass class
#' @description Description of myRefClass
#' @import methods
#' @exportClass myRefClass
#' @section Fields:
#' \describe{
#' \item{\code{field1}:}{Object of class \code{"character"}, field1 description here}
#' \item{\code{field2}:}{Object of class \code{"numeric"}, field2 description here}
#' }

myRefClass<-setRefClass(Class="myRefClass",
fields=list(field1="character",
field2="numeric"))

更新:使用 roxygen2 4.0.1

#' A Reference Class to represent test1.
#' @name test1
#' @import methods
#' @exportClass myRefClass
#' @field field1 A character vector
#' @field field2 A numeric vector

myRefClass<-setRefClass(Class="myRefClass",
fields=list(field1="character",
field2="numeric"))

产生

A Reference Class to represent test1.
Description

A Reference Class to represent test1.
Fields

field1

A character vector
field2

A numeric vector

关于r - 使用 roxygen2 R CMD 检查 codoc 不匹配警告记录引用类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23707709/

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