main.r
ワークスペースを実行前の状態に戻すスクリプトを作成したいと考えています (つまり、スクリプトの最後で、ワークスペースに追加されたすべてのオブジェクトのみを削除します)。以下を実行します。
#main.r
initial.objects <- objects()
tmp1 <- 1
remove(list = setdiff(objects(), initial.objects)
source('main.r')
R コンソールからのviaは、必要に応じて機能します。ただし、これは作業ディレクトリに残されているSplus では機能しませんtmp1
(ファイル全体をソースするのではなく、各行を個別に実行すると機能します)。もう少し調べてみると、R では、objects()
への呼び出しの MIDDLE であっても、ワークスペースに入るオブジェクトを追跡していることがわかりましたsource()
。Splus ではobjects()
、呼び出しが終了するまで、ワークスペースに追加されたオブジェクトについて「認識」していないようですsource()
。
Q: 何が起こっているのですか? main.r
Splus での作業に似たものを得るにはどうすればよいですか?