在 inst/extdata 文件夹的 R 包中记录外部数据?

Documenting external data in R package for the inst/extdata folder?

我正在用 R 编写一个包,正在寻找一种方法来记录存储在 inst/extdata 文件夹中的外部数据源。我知道 /data 文件夹中的数据可以根据 this SO post.

使用 roxygen 进行记录

问题似乎是外部数据没有导出到包的命名空间中,因此将 roxygen 帮助文档绑定到它会造成问题。有没有办法克服这个问题并记录外部数据,类似于 /data 文件夹中项目的方法?

这是我在评论中提供的可重现(linux)解决方案示例。

下面的代码将创建最小包

  • 正在定义虚拟 DESCRIPTION 文件
  • 示例ext/data/data1.csv csv 数据文件
  • 示例man/data1.Rd R 文档文件

然后它将构建并安装包。

mkdir -p my.pkg
cat > my.pkg/DESCRIPTION <<EOL
Package: my.pkg
Type: Package
Title: My pkg
Version: 1.0.0
Description: Example my pkg.
License: GPL-3
EOL
mkdir -p my.pkg/inst/extdata
cat > my.pkg/inst/extdata/data1.sv <<EOL
a,b,c
1,a,2.5
2,b,5.5
EOL
mkdir my.pkg/man
cat > my.pkg/man/data1.Rd <<EOL
\name{data1}
\alias{data1}
\alias{data5}
\title{
my data
}
\description{
desc of data.
}
EOL
R CMD build my.pkg
R CMD INSTALL my.pkg_1.0.0.tar.gz

现在看到可以找到说明书了

Rscript -e 'library(my.pkg); ?data1'
Rscript -e 'library(my.pkg); ?data5'

如您所见,我们可以使用 Rd 文件中 alias 中定义的任何名称来引用 extdata 文档。