无法在Windows 7上更新默认库中的R软件包

我正在尝试使用update.packages在RGui(64位)上更新软件包,但是我收到以下消息:

 Warning in install.packages(update[instlib == l, "Package"], l, contriburl = contriburl, : 'lib = "C:/PROGRA~1/R/R-212~1.1/library"' is not writable Error in install.packages(update[instlib == l, "Package"], l, contriburl = contriburl, : unable to install packages 

我已经看了资源pipe理器中的库文件夹,它只读集,所以我删除它。 但是,当我在检查属性后立即再次出现。 安装新软件包不受影响,因为他们在我的用户configuration文件中有一个单独的文件夹。

有这个窍门让这个工作?

通常您需要pipe理员权限才能更改程序文件中的内容。 尝试以pipe理员身份运行RGui。

这种情况和我一样,在Gui项目的“R”中编写了几个小时之后,我感到厌烦,因为当界面使用某种types的单词(命令)的颜色时,读取代码更容易。 那么,我决定安装RStudio,但很快我就面临着软件包安装问题。 这似乎发生在Windows 7中。我用RSutido解决这个问题的方式是:

  1. C:\ Program Files \ R – 这是包含“R”而不是RStudio文件夹的文件夹!
  2. 右键点击属性。
  3. 安全。
  4. 在“群组或用户名称”中select您的姓名
  5. 点击“编辑”
  6. select“完全控制”
  7. 应用并单击确定

完成这个步骤之后,您应该可以安装所有软件包:-)

尝试

 install.packages('package_name', lib='folder') 

您可以指定一个文件夹来安装您拥有写入权限的库。

希望这可以帮助

我有这个确切的问题,只是改变了自己。 这是我导航到C:/ PROGRAM / R,然后右键单击R来调出属性。 转到安全选项卡,单击要为其添加权限的组/用户。 那对我来说是USER,然后单击编辑,然后选中未选中允许控制结束的框。 我不得不为每个用户都做这个事情(当然,我是以pipe理员的身份运行的)。 点击应用/确定,一切都很好。 我现在可以更新/安装/新的库和你有什么这台电脑,而不必运行R作为pipe理员。

从C:\ Program Files卸载并重新安装到C:\ R为我工作

[见mdsumner的评论和Windows常见问题在这里find]

“… Vista / Windows 7/8 / Server 2008/2012用户使用具有pipe理员权限1的帐户安装单个用户应考虑安装到非系统区域(如C:\ R)

没有更多的信息,我的第一个猜测是,你没有足够的权限写入R站点库文件夹。 通常情况下,R会提示创build一个用户lib文件夹来安装,但在Windows Vista / Windows 7下这可能是不可靠的。

尝试:

 dir.create(Sys.getenv("R_LIBS_USER"), recursive = TRUE) 

在R控制台。 现在库应该安装到/ Users /“你”/ R / win-library / xy,为此你有适当的权限。

尝试使用此命令首先select一个更接近你的cranmirror位置

 chooseCRANmirror() 

然后尝试安装包。 当我得到安装“devtools”的警告时,这个命令对我有帮助。