我在 R 中有一个脚本,用于通过 和 之类的命令创建write.csv
文件dev.copy
。有时我想运行脚本来编译数据(以便在 R 中使用它)但不希望脚本创建文件。这可能是因为我不想覆盖以前的文件,因为我想保持文件(如.csv
文件)打开,或者因为我不想用不必要的文件堵塞我的目录。我将这些场合称为“草稿”模式,其他时间称为“最终”模式。
到目前为止,我的解决方案是
- 根据我对文件覆盖的偏执程度,编写诸如
write.csv(..., file = paste(timestamp, ...))
wheretimestamp <- Sys.Date()
或之类的命令。timestamp <- format(Sys.time(), ...)
(阻塞目录,但在此问题之外很有用。) - 包括
setwd("~/Sandbox/")
草稿。(如果脚本在脚本中间访问特定目录中的文件,则可能会很复杂。) 重新定义文件写入命令并包括一个菜单来询问我处于什么模式:
Mode <- menu(c("Draft", "Final"), graphics=TRUE)
# ...
my.write.csv <- function(...)if(Mode == 2) write.csv(...)
但我觉得可能有更好的方法。还有哪些其他(也许更好)的方法来处理这种情况?