如何解决R语言中Palmer Penguins包的CRAN镜像未设置错误?
解决R-Markdown编织时的CRAN镜像错误
兄弟,这个错误我太熟了!本质原因是你的R会话没有配置CRAN镜像源——而且当你编织R-Markdown文档时,会启动一个全新的独立R会话,这个会话不会继承你平时在控制台里手动设置的镜像配置。哪怕你在控制台里已经设过镜像,knit的时候还是会触发这个报错。
下面给你两种解决方案,按需选择:
方案1:临时配置(快速解决当前文档)
直接在你的Rmd文档的第一个代码块里添加镜像配置,确保knit时的会话能正确访问CRAN:
# 先配置CRAN镜像(这里用清华镜像,国内访问速度快) options(repos = c(CRAN = "https://mirrors.tuna.tsinghua.edu.cn/CRAN/")) # 处理palmerpenguins包的加载/安装 if (!require(palmerpenguins)) { install.packages("palmerpenguins") library(palmerpenguins) }
这样每次编织文档时,都会先设置好镜像再处理包的相关操作,不会再报错。
方案2:永久配置(一劳永逸)
如果不想每次都在文档里加镜像代码,可以给R设置永久镜像,所有新会话(包括knit的会话)都会自动使用:
- 打开R/RStudio,在控制台输入:
chooseCRANmirror()
- 在弹出的窗口里选一个你偏好的镜像(比如国内的中科大、清华镜像,或者官方的
cloud.r-project.org) - 确认后,R会把这个镜像配置保存到你的
.Rprofile文件里,重启R后就生效了,以后不管是控制台操作还是编织文档,都不用再手动设置镜像。
额外小贴士
- 如果你自己已经安装过
palmerpenguins,其实可以直接写library(palmerpenguins),不用加安装判断,但如果要把文档分享给其他人,加上判断语句会更友好,避免别人运行时因为缺包报错。 - 如果某个镜像访问失败,换另一个试试就行,CRAN有很多镜像节点可选。
内容的提问来源于stack exchange,提问作者NoobKim
相关产品推荐
相关产品推荐

