我有一个包含csv文件的包,我把它放在每个R-exts的inst / extdata中。小插图需要此文件。如果我直接拍出小插图,一切都很好。但是,当我运行R --vanilla CMD检查时,检查过程找不到该文件。我知道在检查期间它已被移动到.Rcheck目录中,这可能是问题的一部分。但是我不知道如何设置它以便直接Sweave和vignette构建/检查工作。
小插图包含如下所示的行:
EC1 <- dot2HPD(file = "../inst/extdata/E_coli/ecoli.dot",
node.inst = "../inst/extdata/E_coli/NodeInst.csv",
并且函数dot2HPD通过以下方式访问文件:
ni <- read.csv(node.inst)
以下是错误消息:
> tab <- read.csv("../inst/extdata/E_coli/NodeInst.csv")
Warning in file(file, "rt") :
cannot open file '../inst/extdata/E_coli/NodeInst.csv': No such file or directory
When sourcing ‘HiveR.R’:
Error: cannot open the connection
Execution halted
顺便说一句,这与此question有关,但该信息似乎已过时,并未完全覆盖此区域。
我在Mac上。
答案 0 :(得分:4)
您是否尝试过使用system.file
代替硬编码的相对路径?
EC1 <- dot2HPD(file = system.file("inst", "extdata", "E_coli", "ecoli.dot", package = "your_package+name"))
node.inst <- system.file("inst", "extdata", "E_coli", "NodeInst.csv", package = "your_package_name")