繁体   English   中英

library(data.table)中的错误:没有名为“ data.table”的软件包

[英]Error in library(data.table) : there is no package called 'data.table'

我们已经在IIS上创建了一个调用R脚本的Web服务。 R脚本包括一些库,例如: data.table ,caret和其他一些库。 R返回一个错误,它找不到data.table库:

“库(data.table)中出现错误:没有名为“ data.table”的程序包”。

我们确认data.table软件包已安装在: "C:\\Program Files\\R\\R-3.3.3\\library\\data.table" 当我们运行.libPaths()来检查R尝试从何处加载库时,它返回这是文件夹“ C:/ Program Files / R / R-3.3.3 / library”。

它确实可以在Visual Studio 2017单元测试中甚至在控制台应用程序环境中成功运行。 所以问题是为什么R无法在IIS中加载data.table库?

我们使用以下软件版本:

  • 适用于Windows 3.3.3的R
  • Internet信息服务版本10.0.14393.0
  • RDotnet社区1.6.5

C#代码:

R = REngine.GetInstance();
R.Initialize();
R.Evaluate("install.packages('data.table', repos='http://cran.us.r-project.org', dependencies = TRUE)");
R.Evaluate("library(data.table)");

我们决定切换到“ Microsoft R Open”(MRAN),而不是Windows的R(CRAN)。 这为我们解决了很多问题。 我们无法让CRAN与IIS一起使用。

我们只需要对MRAN进行操作,就是为用户提供IIS应用程序正在运行,并且可以修改对“ C:\\ Program Files \\ Microsoft \\ R Open \\ library”中库文件夹的访问权限。 这是使我们的应用程序中的R引擎能够安装R库所必需的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM