for – flow control “FOR”

for – flow control “FOR”
使用例: for(counter in vec){rcmd}
目的: rcmdをvecの長さ分繰り返す(繰り返す回数が既知の場合)
関連: while, if, break, length, if

# usage #
for(counter in vec) {
  rcmd
}

##### ----- examples ----- #####
# "hello"を3回表示する #
> for(i_loop in 1:3){print("hello")}
[1] "hello"
[1] "hello"
[1] "hello"

# vec1を要素を順番に1つづ表示する #
> vec1=c("you","are","wonderful")
> for(i_char in vec1){print(i_char)}
[1] "you"
[1] "are"
[1] "wonderful"
# 異なった方法
> for(i_loop in 1:length(vec1)){print(vec1[i_loop])}
[1] "you"
[1] "are"
[1] "wonderful"

# BREAK を使った例 ー 繰り返しの停止条件を組み込む   #
# 正規分布に従う乱数を発生させ、3以上の数値が出た場合に #
# 繰り返し停止し、その数値と繰り返し回数を表示する      #
> for (i_counter in 1:10000) {
+  rn=rnorm(1)
+  if (rn>=3) {break}
+ }
> print(c(rn, i_counter))
[1]    3.194892 1140.000000
##### ----- end examples ----- #####

Leave a Reply