【问题标题】:R Can I use .rds files for my data in a package?R 我可以将 .rds 文件用于包中的数据吗?
【发布时间】:2016-03-26 16:46:35
【问题描述】:

我正在尝试将一些代码转换为一个包。根据文档,只有 .RData 文件应该在数据目录中,但我宁愿使用 .rds 文件,因为它们不保留文件名。有时我使用与以后阅读时想要使用的名称不同的名称进行保存。而且我真的只想有一个文件数据集,所以 .RData 文件存储更多的能力实际上是负面的。

所以我的问题是为什么不允许 .rds 文件在包数据目录中?或者有没有其他方法可以解决这个问题?

【问题讨论】:

  • Hadley 有一些很好的文档here
  • 我的问题的答案似乎是 /data 中唯一可接受的数据文件是使用“save”保存的数据文件,这意味着它们采用 .RData 格式。 @r2evans 指向的 Hadley 链接说明了这一点。 rawr 指向的第 1.1.6 节也是如此。

标签: r package


【解决方案1】:

/data 中唯一可接受的数据文件是使用“保存”保存的数据文件,这意味着它们是 .RData 格式。 @r2evans 所指的Hadley's link 是这么说的。 @rawr 指向的section 1.1.6 也是如此。

【讨论】:

    【解决方案2】:

    老问题 - 但你可以。这是一个两步过程。

    1. 将您的数据保存为.rds 文件
    2. 在加载 rds 数据的数据目录中创建一个 R 文件。

    我这样做如下:

    rdsFile <- paste0(schemeName, "_example.rds")
    saveRDS(
          dmdScheme_example,
          file = here::here( "data", rdsFile )
        )
    cat(
          paste0(schemeName, "_example <- readRDS(\"./", rdsFile, "\")"),
          file = here::here( "data", paste0(schemeName, "_example.R") )
        )
    

    【讨论】:

    猜你喜欢
    • 2017-10-21
    • 2021-06-30
    • 1970-01-01
    • 1970-01-01
    • 2015-01-15
    • 1970-01-01
    • 2017-08-28
    • 2023-03-29
    • 1970-01-01
    相关资源
    最近更新 更多