r - 如何将原始数据包含在 R 包中

标签 r dataframe file package roxygen2

我正在做类(class)的期末作业Building R Packages .

在本次作业中,我们需要根据讲师提供的一些示例函数创建一个 R 包。我们需要组织并记录该包,然后将其发布在 GitHub 上。我的软件包名为 FARS,并且已在 GitHub repo 中提供。 .

我无法通过包提供原始数据。按照类(class)阅读 Material 以及本书 Building R Packages 第 14.3 章中提供的说明进行操作后,文件仍然无法被识别。

到目前为止我做了什么?

  1. 准备好软件包的所有文档,包括 roxygen2 标签、DESCRIPTIONREADME.Mdvignette,以下 these steps除了所提到的阅读 Material 和书中提供的说明之外;

  2. 在包目录中创建了一个名为 inst/extdata 的子目录;

  3. 将包含原始数据的所有三个示例文件 (.csv.bz2) 复制到 inst/extdata

  4. 使用 testthat 测试了函数;

  5. 安装了我的 FARS 软件包。

现在我尝试检查安装包后其中一个文件是否可用:

system.file("extdata", "accident_2013.csv.bz2", 
            package = "FARS", 
            mustWork = TRUE)

我收到一条错误消息:

Error in system.file("extdata", "accident_2013.csv.bz2", package = "FARS",  : 
  no file found

这些数据文件需要随包一起提供,以便插图中提供的示例正常工作。

最佳答案

这是一个“现实生活”的例子,使用我最近编写的一个简单的包。 我在构建目录中有一个“数据”目录。
编辑 为了澄清 R-exts 中发现的注释,目录树 packagename/inst/extdata适用于您的函数通过指定目录路径直接调用的数据。由于您想要将数据加载到工作区中,因此请使用 data目录。
我的“数据”目录包含一个名为 preciseNumbersAsChar.r 的文件。该文件包含诸如

之类的作业

charE <- {long number string}

如果您阅读命令 data 的帮助页面,它解释了以 .r 结尾的文件是source d 被调用时。

library(FunWithNumbers)
data('preciseNumbersAsChar')  #works

也就是说,定义的对象现在在我的环境中。

值得阅读 data 的帮助页面详细信息,因为不同的文件类型的处理方式略有不同。

关于r - 如何将原始数据包含在 R 包中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64664009/

相关文章:

r - 根据 R 中的下一个值计算一个数字条件

javascript - IGraph 中的 VisNetwork - 无法实现顶点的簇颜色

python - 在具有结构化数据的列上合并 Pandas Dataframe

Python 从文本文件中读取数字

file - 如何在 Swagger-UI 中打开本地文件

python - 是否可以暂停 python 脚本直到文件未被使用?

r - R 会在运行 OSX 的 Mac Pro 上利用 64GB 内存吗?

xml - 使用XML和R有效地获取具有特定名称的子代数

正则表达式查找每两个逗号,使用 dplyr 将行与列分开

python - 如何将值附加到 pandas 数据框中的单元格