ベクトルをループ処理する
ループの最後のトピックは for ループです。何回処理を繰り返すかがわかっているとき、for ループは良い選択になります。for ループの考え方は、シーケンスを1つずつ順番にたどり、各ステップで処理を行うというものです。シーケンスは、一般的には 1:10 のような数値のベクトルですが、c(2, 5, 4, 6) のような順不同の数値や、文字列の並びでもかまいません。
for (value in sequence) {
code
}
言い換えると「シーケンスの各 value について、このコードを実行する」ということです。たとえば「データフレームの各行について、1列目を表示する」や「文の各単語について、その単語が DataCamp かどうかを確認する」といった例です。
では、例に挑戦しましょう。まず、1 から 10 までのシーケンスの値を表示するループを作成します。次に、そのループを変更して、1 から 10 までの値を合計するようにします。各イテレーションで、シーケンス中の次の値を累積和に加えていきます。
ベクトル seq と変数 sum はあらかじめ用意されています。
この演習はコースの一部です
金融のための中級R
演習の手順
- for ループを完成させ、シーケンスとして
seqを使いましょう。各イテレーションでvalueを表示してください。 - ループを使って
seqの数値を合計します。各イテレーションでvalueをsumに加え、その後でsumを表示してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Sequence
seq <- c(1:10)
# Print loop
for (value in ___) {
print(___)
}
# A sum variable
sum <- 0
# Sum loop
for (value in seq) {
sum <- ___ + ___
print(___)
}