R:分解和使用packrat快照的说明
我使用packrat(V0.4.8.-1)创建了一个快照和R包依赖项包,这些依赖项和相应的R代码一起使用。我想向其他人提供R代码和packrat包,以使我正在做的工作(包括R环境)完全可复制 我使用一台不同于我用来编写R代码和创建捆绑包的计算机来测试分拆。我在R studio中打开了一个R代码文件,并调用了库(packrat)来加载packrat(也就是V0.4.8-1)。然后我调用了packrat::unbundle(bundle=“directory”,where=“directory”),它成功地解除了绑定。但随后调用packrat::restore()时出现错误“此项目尚未打包。请运行'packrat::init()'以初始化packrat”。似乎不需要init(),因为我不打算创建新的快照,而是利用捆绑包中的快照。packrat页面()和CRAN提供了很少的关于分解的文档来帮助解决这个问题,或者我可以向我的代码的用户提供指导(他们可能熟悉R,但可能没有使用packrat)R:分解和使用packrat快照的说明,r,packrat,R,Packrat,我使用packrat(V0.4.8.-1)创建了一个快照和R包依赖项包,这些依赖项和相应的R代码一起使用。我想向其他人提供R代码和packrat包,以使我正在做的工作(包括R环境)完全可复制 我使用一台不同于我用来编写R代码和创建捆绑包的计算机来测试分拆。我在R studio中打开了一个R代码文件,并调用了库(packrat)来加载packrat(也就是V0.4.8-1)。然后我调用了packrat::unbundle(bundle=“directory”,where=“directory”),
那么,是否有人可以提供清晰的分步说明,说明捆绑快照的用户应该如何解绑,然后使用保存的快照运行R代码文件 经过一些实验,我发现了一种迄今为止似乎行之有效的方法 我为用户提供了三个文件:
-tar.gz (packrat bundle file)
-unbundle.R (R code file that includes a library statement to load
the packrat library, and the unbundle command for the tar.gz file)
-unbundle_readme.txt
自述文件包含与下面类似的说明,到目前为止,用户已经能够使用包依赖项运行R代码。自述文件告诉用户有关需求(R、R studio、packrat、R包开发先决条件(适用于Windows的Rtools、适用于Mac的XCode)),并包括sessionInfo()的输出,以记录R包版本,R代码在遵循说明后应使用这些版本。在下面的示例中,“code_folder”是指tar.gz文件中包含R.code和相关输入文件的文件夹
分解说明示例:
第一步
将tar文件保存到一个目录中,但不要展开/解压。
访问保存的包依赖项时出现问题
在R或R studio以外的程序中
用于拆分tar文件
如果tar文件已经展开,请重新保存
tar文件到一个新目录,该目录不应该是相同的
目录作为扩展的tar文件,或
扩展的tar文件
步骤2
将unbundle.R保存在与tar文件相同的目录中
步骤3
使用R studio打开unbundle.R
步骤4
执行unbundle.R
(这将创建一个子文件夹“code_folder”。
请注意,运行此步骤可能需要5-15分钟。)
步骤5
关闭R工作室
步骤6
导航到子文件夹“cold_folder”
步骤7
使用R studio打开R脚本
(软件包库应与下面列出的对应。
这将表明R studio正在访问保存的包
依赖项。)
步骤8
执行R代码,它将利用项目包库。
在使用上述方法加载包库之后
步骤,则无需为每个步骤重新加载包库
剧本R studio将继续访问包依赖项
对于在R studio会话中打开的每个脚本。如果你
随后关闭R-studio,然后从内部打开脚本
解包目录R studio仍应访问
无需重新加载已保存包的依赖项
快照。基于沉默,似乎更适合将这个问题/观点放在桌面上。好问题,顺便说一句。您是否尝试过从命令行执行所有步骤?如果是,你能分享吗?