我安装了两个不同的R版本,一个是最新版本,并且我将其用于所有常规R编码(需要是最新版本,以便我可以使用各种更新和新的软件包),另一个是用于访问OLAP多维数据集(必须是Microsoft的R Client,因为这是唯一支持olapR
程序包且当前使用R版本3.4.3的程序)。
从理论上讲,由于我每月仅需访问一次OLAP多维数据集,因此我将该任务“外包”到了另一个RStudio项目中,在其中下载并保存了所有其他项目所需的数据。因此,所有其他项目都不需要安装olapR
软件包,并且可以并且将以最新的R版本运行。
现在,理想情况下,我想将R版本链接到我的项目,这样就不必每次访问OLAP多维数据集或处理此数据检索项目时都更改全局R版本并重新启动RStudio。切换回去)。但是,我找不到RStudio中的任何选项来实现此结果。
有一些线程描述了相同的问题,但我认为没有令人满意的答案:
https://support.rstudio.com/hc/en-us/community/posts/200657296-Link-Project-and-R-Version
Rstudio project using different version of R
我还尝试寻找与olapR
不同的包,但具有相似的功能,但是除了X4R之外什么都找不到,X4R似乎已经过时并且对我不起作用(https://github.com/overcoil/X4R)。可悲的是,我也无法直接访问OLAP多维数据集用于其结果的数据库,因此我无法对其进行“浏览”。
无论是将项目链接到特定R版本的一般变通方法,还是以其他方式访问OLAP多维数据集的解决方案(对社区没有多大帮助),我都会为您提供的任何帮助或建议感到高兴。
谢谢!
使用MrGumble的回答,我创建了一个.bat文件,该文件将使用所需的R安装来执行我的.R文件。即使这不是我想得到的答案,但我认为这是解决该问题的更好方法。
对于所有面临类似问题的人,这是.bat文件(以前从未创建过,因此也不得不通过谷歌搜索该文件的位置,我想其中的某些位置可能相同):
@echo off
title Getting data for further processing in R
echo Retrieving OLAP data
echo.
"C:\Program Files\Microsoft\R Client\R_SERVER\bin\Rscript.exe" "C:\Users\me\Documents\Projects\!Data\script.R"
echo.
echo Saved data
echo.
pause
再次感谢MrGumble的帮助。
答案 0 :(得分:0)
跳过RStudio。
RStudio实际上只是一个编辑器(尽管功能强大且有用),它可以为您启动R控制台(以及周围的PATH变量,库位置等)。
如果您的每月任务仅需要您运行R脚本(或一些交互工作),则可以从命令行简单地执行您喜欢的R版本并使其运行R脚本。例如
C:\Users\me>"C:\Program Files (x64)\Microsoft R\bin\Rscript" myscript.R
您可能必须定义一些PATH变量,以便较旧的R不会在较新的R的库中查找包,但这完全取决于您当前的设置。