始める無料で始める

break と next

ループの学習の締めくくりとして、break と、それに関連する next の概念に戻りましょう。repeat ループや while ループと同様に、break 文を使うと for ループを完全に抜けられます。さらに、現在の反復だけをスキップしてループを続けたい場合は、next 文を使います。これは、ループ中にエラーの可能性があっても、すべてを止めたくないときに便利です。

for (value in sequence) {
    if(next_condition) {
        next
    }
    code
    if(breaking_condition) {
        break
    }
}

break と next を同時に使う必要はありません。ここでは、それらを使うときの一般的な構造を示しています。

コードが実行される前、冒頭で next を使うポイントは、問題が起きる前にチェックすることにあります。

この演習はコースの一部です

金融のための中級R

コースを見る

演習の手順

apple ベクトルはワークスペースに用意されています。

  • apple を出力してください。欠損値がありますね!
  • 次を行うように、ループ内の空欄を埋めてください。
    • valueNA か確認します。もしそうなら、次の反復へ進みます。
    • value117 を超えるか確認します。もしそうなら、break して売却します!
    • それ以外の場合は、"Nothing to do here!" を出力します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Print apple
___

# Loop through apple. Next if NA. Break if above 117.
for (value in apple) {
    if(is.na(___)) {
        print("Skipping NA")
        next
    }
    
    if(value > ___) {
        print("Time to sell!")
        break
    } else {
        print(___)
    }
}
コードを編集して実行