首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >windows和windows linux子系统之间共享R库

windows和windows linux子系统之间共享R库
EN

Stack Overflow用户
提问于 2021-09-18 16:23:00
回答 2查看 340关注 0票数 3

我有一个窗口ubuntu。我在窗户上安装了R。最近,我试图在我的ubuntu中调用一个R脚本,但它告诉我库没有安装。有没有办法告诉ubuntu的R安装使用我的windows R库,这样我就不用在ubuntu上重新安装它们了吗?

代码语言:javascript
复制
StratifiedFullModel/SecondRun$ Rscript StratifiedFullModels.R
Loading required package: car
Installing package into ‘/usr/local/lib/R/site-library’
(as ‘lib’ is unspecified)
Warning in install.packages(x, dependencies = TRUE) :
  'lib = "/usr/local/lib/R/site-library"' is not writable
Error in install.packages(x, dependencies = TRUE) :
  unable to install packages
Calls: lapply -> FUN -> install.packages
In addition: Warning message:
In library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE,  :
  there is no package called ‘car’
Execution halted

这很奇怪,因为脚本被设置为检查包(其中之一是car ),然后加载它们或安装它们。我怀疑它这样做并不是因为某些权限问题。

这是有问题的,因为我可能想编写脚本,只需自动安装包,而无需手动完成,如果我与同事共享脚本,或者将工作转移到新机器上,这将很费时。

编辑:在ubuntu中尝试使用图灵R,运行install.packages("car")返回以下错误:

代码语言:javascript
复制
> install.packages("car")
Installing package into ‘/usr/local/lib/R/site-library’
(as ‘lib’ is unspecified)
Warning in install.packages("car") :
  'lib = "/usr/local/lib/R/site-library"' is not writable
Would you like to use a personal library instead? (yes/No/cancel) cancel
Error in install.packages("car") : unable to install packages
>

我刚取消了安装。我认为这证实了我对权限存在问题的怀疑。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-09-18 18:08:39

R的Linux和Windows安装是完全分开的,其中包括包。也就是说,您可以在WSL中运行Windows版本,因此不需要维护重复的环境。

下面是在我的机器上运行的Linux和Windows的屏幕截图,来自WSL:

票数 2
EN

Stack Overflow用户

发布于 2021-09-18 17:01:06

请注意,这个答案是基于我的经验,WSL,而不是具体的R。我欢迎任何在WSL下使用R的用户提供更新或更权威的答复。

我相信,如果您尝试使用WSL中的一些Windows库,您将会遇到问题。理论上,“纯-R”库应该可以工作,但在我看来,从一些快速搜索来看,R也可以包含编译过的代码,这将是特定于平台的代码。在这种情况下,如果任何库都以本机代码结束,那么当从Linux调用带有Linux路径结构(例如/home而不是C:\Users)、进程和其他OS结构时,Windows库就会出现问题。

至于权限问题,R使用的是一个默认的库目录(在/usr/local/lib/R/site-library下),该目录只能由root写。您似乎可以更改库安装目录,如下所示:

代码语言:javascript
复制
> install.packages("car", lib="/home/<username>/.local/lib/R/site-library/")

当然,您需要先创建该目录。有关更多详细信息,请参阅此页

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69236439

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档