2012-02-14 17 views
16

control flow help pageには「次へ」の使用例はありません。スクリプト内の条件に基づいて次の反復にスキップします。私はの使用を実装するに行くかどう制御フローでの次の使用

x <- 1:100 
for(i in 1:10) { 
# next(x[i] < 5) # Just for conceptualizing my question. 
print(x[i]) 
} 

:以下の例を使用して

x[i] > 5ない限り、期待される出力が画面上に10を通って5になり、のは、私はそれを印刷しないとしましょう上記のようなものを達成するにはnext

+0

そして、あなたの質問です....? –

+0

うん、それは長い一日だった。 –

+1

:)感情を知ってください... –

答えて

13

私はあなたに完全な例とを与える「はい」が、あなたの質問が何であるか、私はわからないよ:

R> for (i in 1:10) { 
+  if (i < 5) next 
+  print(i) 
+ } 
[1] 5 
[1] 6 
[1] 7 
[1] 8 
[1] 9 
[1] 10 
R> 
9

この作業を行うには、x < 5があるかどうかをテストする必要があります。もしそうなら、nextに行ってください。 nextは順番に(ヘルプページを引用するために)、 "現在の反復の処理を停止し、ループインデックスを進める"となり、ループを再び開始します。

x <- 1:100 
for(i in 1:10) { 
    if(x[i] < 5) next 
    print(x[i]) 
} 
[1] 5 
[1] 6 
[1] 7 
[1] 8 
[1] 9 
[1] 10