0

このようなスクリプトFoo.rがあるとします。

source('Bar.r')
print("Hello World")

さらに、 でBar.r、スクリプトの残りの部分を実行する代わりに、何らかの条件が true の場合にすぐに戻りたいとします。

if (DO_NOT_RUN_BAR) return; // What should return here be replaced with?
// Remainder of work in bar

特に、 が設定されている場合は、返して実行を継続し、 を印刷しDO_NOT_RUN_BARたいと思います。Bar.rFoo.rHello World

ifこれを行う 1 つの方法は、 のステートメントを反転し、 の論理否定をチェックBar.tするステートメント内にスクリプト全体をラップすることですが、上記のコードのステートメントを置き換えて の実行をスキップできるかどうかを知りたいです。それが調達されたときの残りの部分。ifDO_NOT_RUN_BARreturnBar.r

4

3 に答える 3

0

複数行の式を{...}囲んでスクリプトを作成し、途中で stop を使用します。

{ print("test")
  print("test")
  print("test"); stop()
  print("test")
  print("test")
  print("test") }
#[1] "test"
#[1] "test"
#[1] "test"
#Error: 
于 2013-10-30T22:17:04.490 に答える