[R] RStudioでスクリプトをソース実行した時と、1行ずつ実行した場合に、出力が異なる場合の対処法

RStduioではスクリプトを実行する方法が2つある。

(1)1行ずつ実行([Run]ボタンをクリックする)

(2)一括実行([Source]ボタンをクリックする)

1行ずつ実行した場合には、関数の実行結果が必ずコンソールに出力される。

一方、一括実行した場合、実行結果がコンソールに出力される時と、されない時がある。この違いを生む原因は何か?

実は[Source]ボタンには以下の画面に示すように、「Source」と「Source with Echo」の2つのモードがある。

source

[Source]モードの場合、関数の実行結果がコンソールに出力されない。

[Source with Echo]モードの場合、関数の実行結果がコンソールに出力される。

[Source]ボタンは上記いずれかのモードになっている。どうやら直近(最後に実行した時)のモードを記憶しているらしい。

従って、RStudioでスクリプトをソース実行した時と、1行ずつ実行した場合に、出力が異なる場合には、[Source]ボタンがどちらのモードになっているのかをチェックするとよい。

コメント