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を出力してください。欠損値がありますね!- 次を行うように、ループ内の空欄を埋めてください。
valueがNAか確認します。もしそうなら、次の反復へ進みます。valueが117を超えるか確認します。もしそうなら、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(___)
}
}