将R_markdown连接到PDF时loadnamespace出错

cqoc49vn  于 2023-03-27  发布在  其他
关注(0)|答案(4)|浏览(240)

这是我第一次使用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()

但如果运气不好

j2cgzkjk

j2cgzkjk1#

loadNamespace(j〈- i1L,c(lib.loc,.libPaths()),versionCheck = vIj)出错:命名空间*'xfun'*0.17已加载,但需要〉= 0.19

如果你发现了上面的错误,你可以使用下面的解决方案来删 debugging 误。同样的方法可以用于任何软件包。(代替xfun,任何软件包名称都可以出现)。

解决方案:

在RStudio中,导航到-〉Tools-〉Check For package updates,在这里您可以选择包并更新。如果这不起作用,请更新R版本并尝试更新包。
通过执行上述方法,软件包将被更新到较新的版本。

aor9mmx1

aor9mmx12#

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文件安装的软件包。我不知道如何检测这些软件包。

ryevplcw

ryevplcw3#

我在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),问题解决
总而言之,这很费时间,而且我不太明白这个问题。也许有更好的方法?

d8tt03nd

d8tt03nd4#

来自Ranjan Shetty works的回答. https://stackoverflow.com/users/15898034/ranjan-shetty
只是重新安装xfun包,问题解决了.
(我没有评论,因为我没有足够的积分)

相关问题