gpt4 book ai didi

将 rmarkdown 从 RStudio 服务器渲染到外部驱动器

转载 作者:行者123 更新时间:2023-12-02 00:12:54 26 4
gpt4 key购买 nike

在本地工作时,我使用以下内容来渲染 rmarkdown 文档:

rmarkdown::render(input = rmd.temp , output_dir = out.dir, output_file = out.name)

这会获取我的模板文档 rmd.temp,然后将文档呈现到 out.dir 并将文件命名为 out.name

我正在尝试在 RStudio 服务器上进行复制。当 out.dir 是本地目录时,代码可以正常工作。但是,当 out.dir 是到外部驱动器的映射目录时,我收到以下错误:

Error in replayPlot(x) : 
could not open file'/...path..../figure-html/unnamed-chunk-2-1.png'

映射驱动器的链接有效,因为我可以使用:

dir.create(out.dir)

并看到新文件夹出现。对于渲染卡住的原因有什么想法吗?

更新

这可能只是一个权限问题,因为我也无法编写 csv 文件:

df <- data.frame(a=1:10)

setwd(out.dir)

write.csv(df, file = "df.csv")

Error in file(file, ifelse(append, "a", "w")) :
cannot open the connection

RStudio 服务器在 Ubuntu 上运行。我将提出一个关于如何授予 RStudio 文件夹权限的新问题。

最佳答案

对于遇到此问题的任何人,可以通过将其添加到脚本的开头来修复:

Sys.umask(mode="0000")

这是一个权限问题。在 shell/命令行中,全局权限为“0000”,但在 RStudio 控制台中,全局权限为“0002”,这会为新文件生成 -rw-r-- 权限。可能可以更改 RStudio 的全局权限,但这可行。

关于将 rmarkdown 从 RStudio 服务器渲染到外部驱动器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40288278/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com