不能从R. net引用外部R包

本文关键字:外部 引用 net 不能 | 更新日期: 2023-09-27 18:05:10

从我的。net网站利用R,我使用。net(1.5.13)。在某种程度上,这对我来说工作得很好,但是当我试图引用外部R包(包:tm)时,我遇到了大麻烦。

下面的c#代码:

REngine engine = null;
REngine.SetEnvironmentVariables();
engine = REngine.GetINstance();
engine.Initialize();
engine.Evaluate(".libPaths('C:/Users/Laptop/Documents/R/win-library/3.1')");
engine.Evaluate("library(tm)");

导致:包或命名空间加载失败形式'tm'

从RStudio命令library(tm)工作没有任何异常。

我尝试了以下步骤来解决这个问题:

  • 重新安装R
  • 从R studio更新包
  • 添加'C:/Users/Laptop/Documents/R/win-library/3.1'到R_LIBS, R_LIBS_USER和R_LIBS_SITE

但到目前为止似乎没有什么帮助。

有人能帮我解决这个棘手的问题吗?

来自sessionInfo():

的一些信息

R版本:3.1.0 (2014-04-10)

平台:x86_64_w64_mingw32/x64(64位)

其他附加包:[1] tm_0.5-10

不能从R. net引用外部R包

codeplex站点记录的最后两个问题,在这里和这里,与这个问题有关:从IIS web应用程序运行rnet是一个已知的长期问题。值得庆幸的是,最近skyguy94对这个问题做出了迄今为止最好的诊断和解释,据我所知,它提出了一个解决方案。你应该试一试。

未来的rnet版本可能会提供一种更简单的方式来容纳IIS,但这取决于已经很忙的志愿者的时间。同时,我将更新主页以标记在IIS下运行的恼人问题。

在错误显示的包之后可能有其他基本包失败。

在我的情况下,matrixStats失败了,但在后台统计无法加载,这是失败的,因为它试图在统计库中找到核心R dll。

我从另一个帖子修复了这个问题:http://author-entry17.rssing.com/chan-9456546/all_p43.html

您必须将dll从架构文件夹复制到包路径中作为解决方案。

复制dll到C:'Program Files'R'R-3.1.0'bin'i386或C:'Program Files'R'R-3.1.0'bin' x64

R'R-3.3.1'library'stats'libs'x64或R'R-3.3.1'library'stats'libs'i386