繁体   English   中英

将 R_markdown 编织为 PDF 时加载命名空间出错

[英]Error in loadnamespace when knitting R_markdown to PDF

这是我第一次使用 R_Markdown

我创建了一个新的 R_Markdown 并试图将其编织为 PDF。 当我这样做时,我收到以下错误


processing file: R_markdown.Rmd
  |..........                                                            |  14%
  ordinary text without R code

  |....................                                                  |  29%
label: setup (with options) 
List of 1
 $ include: logi FALSE

  |..............................                                        |  43%
  ordinary text without R code

  |........................................                              |  57%
label: cars
  |..................................................                    |  71%
  ordinary text without R code

  |............................................................          |  86%
label: pressure (with options) 
List of 1
 $ echo: logi FALSE

  |......................................................................| 100%
  ordinary text without R code


output file: R_markdown.knit.md

"C:/Program Files/RStudio/bin/pandoc/pandoc" +RTS -K512m -RTS R_markdown.utf8.md --to latex --from markdown+autolink_bare_uris+tex_math_single_backslash --output R_markdown.tex --lua-filter "C:\Users\faiel\Documents\R\win-library\4.0\rmarkdown\rmarkdown\lua\pagebreak.lua" --lua-filter "C:\Users\faiel\Documents\R\win-library\4.0\rmarkdown\rmarkdown\lua\latex-div.lua" --self-contained --highlight-style tango --pdf-engine pdflatex --variable graphics --variable "geometry:margin=1in" 
Error in loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]]) : 
  namespace 'xfun' 0.17 is already loaded, but >= 0.19 is required
Calls: <Anonymous> ... namespaceImportFrom -> asNamespace -> loadNamespace
Execution halted

我不明白为什么会这样。 我尝试了以下

install.packages("rmarkdown")

update.packages(ask = FALSE, checkBuilt = TRUE)
tinytex::tlmgr_update()

但没有任何运气

loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]]) 中的错误:命名空间'xfun' 0.17 已加载,但 >= 0.19 是必需的

如果您发现上述错误,您可以使用以下解决方案来消除错误。 同样的方法可以用于任何包。(代替 xfun 任何包名称都可以存在)。

解决方案:
在 RStudio 中,导航到 ->Tools->Check For package updates,在这里您可以选择软件包并进行更新。 如果这不起作用,请更新 R 版本并尝试更新软件包。

通过执行上述方法,包将更新到更新的版本。

CRAN 上的xfun版本目前是 0.18。 显然您正在使用其他一些需要xfun 0.19 版的软件包。 所以你需要停止使用那个非 CRAN 包,或者从 Github 或其他一些未经测试的源更新xfun

您可以运行remotes::update_packages()来搜索许多更新的地方。 我不建议依赖非 CRAN 包:它们明天可能会以不兼容的方式更改。

要找出remotes包(或devtools )安装了哪些非 CRAN 包,您可以运行

subset(as.data.frame(installed.packages(fields="RemoteType")), !is.na(RemoteType))

但是,我认为这不会检测通过下载.tar.gz.zip文件安装的软件包。 我不知道如何检测这些。

我在 RStudio 1.4.1103.0 和 R 4.0.4 (Win10, 20H2) 下遇到了同样的问题。 我更新安装的软件包后出现了问题。 我不能确切地说是哪些,因为我更新了所有软件包。

Error in loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]]) : namespace 'xfun' 0.17 is already loaded, but >= 0.19 is required

Xfun 无法更新。 我卸载了 rstudio,然后分别安装了最新版本的 RStudio (11.04.) 和 R (4.0.5.)。 之后我可以再次更新 xfun (0.22),问题就解决了

总而言之,相当耗时,我不太明白这个问题。 也许有更好的方法?

Eu havia atualizado o R para 4.12 e RStudio 2021.09.1 372 (WIN10 PRO) e apresentou esse erro descrito。 Então atualizei Conforme:没有 RStudio,acesse -> Ferramentas-> Verificar atualizações de pacote,Atualizei todos os pacotes。 立即功能。 reiniciei a maquina e rodei o RStudio。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM