Excel VBA调用R脚本:checkpoint包适配及versions方案限制咨询
Excel/R工具包版本兼容及checkpoint调用问题求助
我开发了一套Excel/R工具,流程是:通过Excel VBA生成供R使用的CSV文件,调用Windows Shell启动R,等R运行完成后再导入脚本生成的CSV结果。但这套工具的R代码无法兼容2020年3月1日后发布的部分包版本,导致新用户没法直接安装当前依赖的包版本,还有其他项目有版本冲突的用户也受影响。
问题1:versions包方案是否会限制新版R用户?
我想过一个解决方案:针对不需要使用新版R的用户,用versions包安装所有依赖包及其依赖的旧版本。但我担心这个方案会限制那些需要使用新版R的用户,这个假设是否正确?
问题2:如何让Excel VBA启动的R脚本访问checkpoint安装的包?
我尝试用checkpoint包解决版本问题,在RStudio项目中安装2020年3月1日版本的包后运行正常,但通过Windows Shell调用R脚本时,却无法访问checkpoint安装在RStudio项目中的包。我试过指定.libPaths()指向RStudio项目路径,但没成功。
请问:
- 怎么才能让Excel VBA启动的R脚本访问到checkpoint在RStudio项目中安装的包?
- 是否存在类似当前R调用方式的RStudio Windows Shell调用命令?
当前使用的Windows Shell代码如下:
rExeCall = "C:\Program Files\R\R-3.6.2\bin\Rscript.exe" rExeOptns = " --no-environ --no-init-file --no-restore --verbose " rscrpt = "Tool.R" Shell (rExeCall & rExeOptns & rscrpt)
这段代码在versions方案下可行,但在checkpoint方案下无法正常工作。
内容的提问来源于stack exchange,提问作者Swank
相关产品推荐
相关产品推荐

