install.packages在knitr文档中失败:";试图在不设置镜子的情况下使用起重机;
使用以下代码,我获得了所需的数据,但由于某些原因,我无法理解install.packages在knitr文档中失败:";试图在不设置镜子的情况下使用起重机;,r,knitr,R,Knitr,使用以下代码,我获得了所需的数据,但由于某些原因,我无法理解knitr不允许我编译PDF文档,如下所示: 我的代码: install.packages("weatherData") library(weatherData) istanbul <- getWeatherForDate("Istanbul", start_date = Sys.Date() - 41, en
knitr
不允许我编译PDF文档,如下所示:
我的代码:
install.packages("weatherData")
library(weatherData)
istanbul <- getWeatherForDate("Istanbul",
start_date = Sys.Date() - 41,
end_date = Sys.Date())
install.packages(“weatherData”)
图书馆(气象数据)
伊斯坦布尔eval->install.packages->grep->contrib.url
停止执行
除非您特别要求,否则Knitr会生成一个R会话,没有默认的cran镜像。当我们使用Rstudio时,我们往往忘记了我们需要为每个R会话设置CRAN,因为它负责它,但只用于交互使用,而不用于knitr
您可以尝试将镜像指定为install.packages
参数:
install.packages("weatherData",repos = "http://cran.us.r-project.org")
或者,您可以在.Rprofile
中设置默认的CRAN镜像。看
也就是说,通过knitr文档安装软件包不是一个好主意,您可能会编译多次。如果需要,您应该假设人们知道如何安装丢失的软件包,或者至少在再次安装之前测试该软件包是否已安装
if(!require(weatherData)) install.packages("weatherData",repos = "http://cran.us.r-project.org")
您必须在R中设置CRAN存储库。为此,请启动R或RStudio。在R终端中,运行以下代码
r = getOption("repos")
r["CRAN"] = "http://cran.us.r-project.org"
options(repos = r)
install.packages("weatherData")
上面的代码在R中定义了CRAN存储库,在下一个包安装中无需再次定义
另一种方法是简单地运行install.packages(“weatherData”,repos=”http://cran.us.r-project.org)
。但是,对于第二种解决方案,存储库没有设置,您必须在每次安装软件包时将其作为参数传递。
这对我来说不起作用,因为我安装了软件包,而这些代码行中断了knit功能。当我删除了所有包含安装包的行(并使用了最新的R和R标记)时,这个错误消失了。有趣-你能解释一下为什么在新环境中没有默认的CRAN镜像吗?我实际上指的是R会话,而不是环境。对不起。这只是一个默认的R行为,我们在使用Rstudio时往往会忘记,因为它会处理它。不必担心,我没有混淆“环境”和“会话”(从上下文中可以清楚地看出)。然而,我不知道RStudio参与了设置这些选项。感谢您的澄清。您可以将软件包安装代码转换为注释。这将消除错误,并向用户提供有关软件包安装的提示<代码>#install.packages(“weatherData”,repos=”http://cran.us.r-project.org “”我5分钟前才第一次开始使用R,我要做的第一件事就是在Google上搜索一条模糊的错误消息,以便配置软件包下载镜像??他们在抽烟吗?
r = getOption("repos")
r["CRAN"] = "http://cran.us.r-project.org"
options(repos = r)
install.packages("weatherData")