标签: roxygen2

在开发R包中包含数据示例

我渴望学习如何将数据示例合并为函数上方的注释,例如:

##' @examples 
##' ## Set working directory...
##' ## Load data into R session:
##' data <- system.file("extdata", "data.txt", package="...", sep="\t", header=TRUE, stringsAsFactors = FALSE)
##'
##' ## For reproducible results:
##' set.seed(999)
Run Code Online (Sandbox Code Playgroud)

我将"data.txt"文件放在目录中:/ pkg_Name/inst/extdata /.但是,R CMD检查表示此步骤中的错误.如果我继续进行R CMD构建和R CMD安装,那么在加载软件包后,我无法将数据导入R会话......有人能告诉我出了什么问题吗?这是在函数帮助文档末尾包含数据示例的正确方法吗?

非常感谢!

r package roxygen2

23
推荐指数
2
解决办法
2万
查看次数

使用Roxygen2模板标签

有人可以举例说明如何正确使用模板标签Roxygen2.我试图做最明显的事情(对我来说):

在我的packageName-package.R档案中:

 #' [... other Roxygen blocks ...]
 #' 
 #' @templateVar testTemplateTag Testing one two
 NULL
Run Code Online (Sandbox Code Playgroud)

然后在someFunction.R文件中

 #' [... other Roxygen blocks ...]
 #'
 #' @template testTemplateTag
Run Code Online (Sandbox Code Playgroud)

我收到错误:

 Error : Can not find template testTemplateTag
Run Code Online (Sandbox Code Playgroud)

我试图有一个地方来记录通常重复的定义示例等.当这些东西嵌套在我一直在使用的一组函数中时@inheritParms.但有些东西,如定义和其他描述,在几个地方使用.我已经搜查高和低的使用@template@templateVar并没有发现任何东西.

谢谢.

r roxygen roxygen2

22
推荐指数
1
解决办法
2277
查看次数

使用roxygen2导入两个具有相同名称的函数

我是CRAN包的维护者,并在加载时收到以下消息:

* checking whether package ‘qdap’ can be installed ... [10s/10s] WARNING
Found the following significant warnings:
  Warning: replacing previous import ‘annotate’ when loading ‘NLP’
  Warning: replacing previous import ‘rescale’ when loading ‘scales’
Run Code Online (Sandbox Code Playgroud)

因为我使用plotrix和scale包以及NLP和ggplot包.他们具备的功能rescaleannotate共同点.这会导致最新的CRAN检查发出重大警告.所以我决定"修理"它.

我的描述是这样的:

Package: qdap
Type: Package
Title: Bridging the gap between qualitative data and quantitative analysis
Version: 1.0.0
Date: 2013-06-26
Author: Tyler Rinker
Maintainer: Tyler Rinker <tyler.rinker@gmail.com>
Depends:
    R (>= 3.0.0),
    ggplot2 (>= 0.9.3.1),
    gdata,
    grid,
Imports:
    NLP,
    openNLP,
    plotrix,
    scales,
LazyData: TRUE …
Run Code Online (Sandbox Code Playgroud)

r package roxygen2

22
推荐指数
1
解决办法
4706
查看次数

R包中的双语(英语和葡萄牙语)文档

我正在编写一个包,以方便进口巴西社会经济微观数据集(人口普查,PNAD等).我预见该包的两个不同用户组:

  • 巴西的用户可能会对使用葡萄牙语的文档感到更放心.可能在某种程度上可以理解英语,但是外语可能会使包装感觉不那么"符合人体工程学".

  • 更广泛的国际用户社区,英语文档可能是必要条件.

是否可以以文档"双语"(英语和葡萄牙语)的方式编写包,并且向用户显示的语言将取决于他们的国家/语言设置?

也,

这在roxygen2文档框架中是否可行?

我意识到,通过使包装更加复杂和难以维护,使包装更加用户友好是一种权衡.从以前的经验来看这种权衡的一般评论也是受欢迎的.

编辑:根据评论的建议,我交叉发布了r-package-devel mailling list.在这里,然后按照底部的答案.Duncan Murdoch发布了一个有趣的答案,内容涵盖了@Brandons回答(贝娄)的一些内容,还包括我认为有用的两个额外建议:

  • 有一种语言的包,但不同语言的插图.我会遵循这个建议.

  • 必须使用软件包的版本,比方说1.1和1.2,每种语言一个

documentation r package roxygen2

22
推荐指数
1
解决办法
359
查看次数

"namespaceExport中的错误(ns,exports):undefined exports"是什么意思?

在构建包时,我收到了错误

Error in namespaceExport(ns, exports) : 
  undefined exports: FooBarBaz
Run Code Online (Sandbox Code Playgroud)

这是什么意思,我该如何解决?

r exception roxygen2

21
推荐指数
2
解决办法
5362
查看次数

为什么roxygen2不会自动更新DESCRIPTION文件中的"Imports"?

我正在努力密切关注@ hadley的书,以学习编写R包的最佳实践.我很高兴看到这些关于本书哲学的界限:

任何可以自动化的东西都应该是自动化的.尽可能少地用手做.尽可能多地使用功能.

因此,当我阅读NAMESPACE文件中的导入指令和DESCRIPTION文件中的"Imports:"字段之间的依赖关系和(某种)混淆差异时,我希望它能roxygen2自动处理它们.毕竟

NAMESPACE中提到的每个包装也必须出现在Imports或Depends字段中.

我希望roxygen2在我的函数中使用@import,并确保它包含在DESCRIPTION文件中.但它不会自动执行此操作.

所以我要么手动将它添加到DESCRIPTION文件中,要么几乎手动使用devtools::use_package.

寻找答案,我在SO中找到了这个问题,@ hadley在评论中证实了这一点

目前,命名空间roclet将修改NAMESPACE但不修改DESCRIPTION

和其他帖子(例如这里这里)collate_roclet讨论的地方,但" 这只有在你的代码有副作用时才有意义;最常见的是因为你正在使用S4 ".

我想知道:

  • 描述不是自动更新的原因(有点与前面提到的哲学相矛盾,可能与之相同roxygen2)和
  • 如果有人已经制定了一种方法来做到这一点

r roxygen2

20
推荐指数
1
解决办法
631
查看次数

使用roxygen2记录数据集

我正在尝试使用roxygen2记录R包中的一些数据集.仅考虑其中一个:

  • 我有 mypkg/data/CpG.human.GRCh37.RDa
  • 其中包含一个名为的对象 CpG.human.GRCh37
  • 和一个名为:的文件mypkg/R/cpg-data.R,其中包含:

    #' @name CpG.human.GRCh37
    #' @title CpG islands - human - genome build: GRCh37/hg19
    #' @description This data set list the genomic locations of human CpG islands,
    #' with coordinates based on the GRCh37 / hg19 genome build.
    #' @docType data
    #' @usage CpG.human.GRCh37
    #' @format a \code{RangedData} instance, 1 row per CpG island.
    #' @source UCSC Table Browser
    #' @author Mark Cowley, 2012-03-05
    #' @export
    NULL
    
    Run Code Online (Sandbox Code Playgroud)

当我进行roxygenize时,会创建它mypkg/man/CpG.human.GRCh37.Rd,包含:

    \docType{data}
    \name{CpG.human.GRCh37}
    \alias{CpG.human.GRCh37} …
Run Code Online (Sandbox Code Playgroud)

packaging r rd roxygen2

19
推荐指数
1
解决办法
4009
查看次数

使用roxygen2和BibTeX引用R包中的文章?

我正在使用roxygen2作为记录我的R包的工具,我发现roxygen2中有一个@references标签,但这似乎只接受自由格式文本.我找到了一些关于roxygen的演示文稿,其中有@bibliograph和@cite标签,但我是否认为roxygen2中没有这样的东西?

我应该以某种方式从bibtex文件中取出引用并在@references标记之后直接用适当的格式手动编写它们,还是有更聪明的方法呢?在多个函数/ rd文件中,我需要引用大约七篇不同的文章.

documentation r bibtex citations roxygen2

19
推荐指数
1
解决办法
2854
查看次数

用deqn和roxygen记录方程

我正在使用\deqn{}{}roxygen2来记录包中函数的方程式.LaTeX(第一个参数deqn)渲染得很好,因为在LaTeX方程中忽略了空格,但是我对ASCII(第二个参数deqn)表示有问题.

问题是我的格式被破坏了(看起来roxygen将整个deqn命令放在"单行"上,然后将该行包裹在~60列左右).有没有办法强制roxygen2保存.R文件中的roxygen命令/注释中的空格格式?

我在文件中有以下代码example.R:

#'Example
#'
#'deqn ASCII example
#'
#'\deqn{ \sigma = \sqrt{ \frac{Z}{n} \sum
#'  \left[ \textstyle\frac{1}{2}\displaystyle
#'    \left( \log \frac{H_i}{L_i} \right)^2  - (2\log 2-1)
#'    \left( \log \frac{C_i}{O_i} \right)^2 \right] }
#'}{sqrt(N/n * runSum(0.5 * log(OHLC[,2]/OHLC[,3])^2 -
#'           (2*log(2)-1) * log(OHLC[,4]/OHLC[,1])^2, n))}
#'
#'@param x An example parameter
#'@return A example result
#'@author Joshua Ulrich
#'@keywords ts
#'@export
"example" <-
function(x) {
}
Run Code Online (Sandbox Code Playgroud)

我使用以下R代码生成example.Rd文件:

library(roxygen2)
setwd("dir/containing/example.R/") …
Run Code Online (Sandbox Code Playgroud)

equation r roxygen2

19
推荐指数
2
解决办法
4608
查看次数

R CMD检查警告:在文档对象中使用的函数/方法...但不在代码中

我正在写一个包但是一个持续的R CMD check警告阻止我完成包并将其发布到CRAN.我roxygen2用于内联文档,尽管这可能不是错误的根本原因.

如果您知道如何删除此警告,我很可能会找到一种方法来使用它roxygen2.

如何 从包裹检查中删除警告Functions/methods with usage in documentation object ... but not in code


R CMD check警告:

* checking for code/documentation mismatches ... WARNING
Functions/methods with usage in documentation object 'names<-' but not in code:
  names<-
Run Code Online (Sandbox Code Playgroud)

功能和roxygen文档:

#' Updates names and variable.labels attribute of surveydata.
#' 
#' @name names<-
#' @rdname names
#' @aliases names<- names<-.surveydata
#' @param x surveydata object
#' @param value New …
Run Code Online (Sandbox Code Playgroud)

r package roxygen2

18
推荐指数
1
解决办法
2888
查看次数

标签 统计

r ×10

roxygen2 ×10

package ×4

documentation ×2

bibtex ×1

citations ×1

equation ×1

exception ×1

packaging ×1

rd ×1

roxygen ×1