如何修复file(file,ifelse(append,“ a”,“ w”))中的错误:无法在R Notebook中打开连接

时间:2019-10-07 15:10:23

标签: r rnotebook

我目前正在学习R Notebook,但遇到路径问题。我做了一个R项目,并将所有脚本和文件托管在一个包含R项目的文件夹中。我正在尝试跑步:

接下来,安装库:

library(tidyverse)
library(CHNOSZ)
library(janitor)

然后使用以下命令导入和合并文件:

d <-list.files(path="./merge", pattern="*.csv", full.names = TRUE) %>% 
  map_df(~read_csv(., col_types = cols(.default = "c")))

d

,结果是带有0行的小标题。另外,

write.csv(d,file="data_generated/FinalmergeAllCompounds_comb.csv")

引发错误file(file,ifelse(append,“ a”,“ w”))中的错误:无法打开连接

当我在Rstudio中的同一项目中将其作为普通脚本运行时,脚本可以正常工作。我合并.csv文件没有问题,可以毫无问题地将其导出回我的项目目录中。

RNotebook和文件路径之间似乎有冲突。我该如何解决?

1 个答案:

答案 0 :(得分:0)

该问题的答案是添加:


knitr::opts_knit$set(root.dir = rprojroot::find_rstudio_root_file())

根据csgroen的评论和这篇帖子Setting work directory in knitr using opts_chunk$set(root.dir = ...) doesn't work

到笔记本脚本的顶部