install.packages()从R 3.1.2更改为R 3.2.1
我在一台没有互联网接入的Windows7机器上工作。到目前为止,我通过在install.packages()从R 3.1.2更改为R 3.2.1,r,install.packages,R,Install.packages,我在一台没有互联网接入的Windows7机器上工作。到目前为止,我通过在//server/x/bin/windows/contrib/3.1中创建二进制CRAN存储库的本地副本,然后运行write\u包(“//server/x/bin/windows/contrib/3.1”),最后设置r[“CRAN”]=”file:////server/x";r[“克兰特拉”]=r[“克兰特拉”]在C:/ProgramFiles/R/R-3.1.2/etc/Rprofile.site中 但是,自R 3.2.1
//server/x/bin/windows/contrib/3.1
中创建二进制CRAN存储库的本地副本,然后运行write\u包(“//server/x/bin/windows/contrib/3.1”)
,最后设置r[“CRAN”]=”file:////server/x";r[“克兰特拉”]=r[“克兰特拉”]代码>在C:/ProgramFiles/R/R-3.1.2/etc/Rprofile.site
中
但是,自R 3.2.1以来,这不再有效。install.packages
错误消息中的路径表示R正在查找源程序包:
Cannot open compressed file '//server/x/src/contrib/PACKAGES'
我认为Windows上的R只会查找二进制软件包
查看3.1.2和3.2.1的install.packages
之间的差异,我可以看到相当多的更改。然而,函数的源代码有500多行,这使我很难看到问题具体在哪里
我已经试着设置
options(install.packages.check.source="no")
并将type=“win.binary”
显式添加到install.packages
——两者都没有成功
有趣的是
contrib.url(options("repos")$repos["CRAN"],type="win.binary")
提供正确的路径file:////server/x/bin/windows/contrib/3.2
但不知何故,install.packages(…,type=“win.binary”)
所以我的问题是你们是否经历过类似的问题
如果没有,我将非常感谢任何指向我可能犯的错误的指针。我已经找到了问题所在。
R3.2.1新闻部分()说
- 在使用二进制软件包的平台上,pkgType选项的默认值现在为“both”,因此如果使用二进制版本,将尝试使用源软件包
不可用或不是最新的
问题是RStudio没有直接调用install.packages
,而是通过一些其他函数,如.rs.callAs
。在其中一个函数中,available.packages()
在没有任何参数的情况下被调用。因此,它通过getOption(“pkgType”)
确定参数type
。但是,从R3.2.1开始,它现在是“两者”
,而不是像R3.1.2那样的“win.binary”
因此,该问题的快速解决方法是添加
options(pkgType="win.binary")
到yourRinstallpath/etc/Rprofile.site
我发现了问题。
R3.2.1新闻部分()说
- 在使用二进制软件包的平台上,pkgType选项的默认值现在为“both”,因此如果使用二进制版本,将尝试使用源软件包
不可用或不是最新的
问题是RStudio没有直接调用install.packages
,而是通过一些其他函数,如.rs.callAs
。在其中一个函数中,available.packages()
在没有任何参数的情况下被调用。因此,它通过getOption(“pkgType”)
确定参数type
。但是,从R3.2.1开始,它现在是“两者”
,而不是像R3.1.2那样的“win.binary”
因此,该问题的快速解决方法是添加
options(pkgType="win.binary")
到yourRinstallpath/etc/Rprofile.site