write.csv
や などのコマンドを使用してファイルを作成するために使用される R のスクリプトがあり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(...)
しかし、もっと良い方法があるかもしれないと感じています。この状況にアプローチする他の (おそらくより良い) 方法は何ですか?