循环结构重复地执行一个或一系列语句, 直到某个条件不为真为止。 R中的循环结构包括for
和while
结构。
for 结构
for
循环重复地执行一个语句, 直到某个变量的值不再包含在序列seq
中为止。 语法为:
for (var in seq) statement
试用一下:
> for (i in 1:3) print("Hello World")
[1] "Hello World"
[1] "Hello World"
[1] "Hello World"
> for i in 1:3 print("Hello World")
Error: unexpected symbol in "for i"
> for (i in 1:3) {print("Hello World")}
[1] "Hello World"
[1] "Hello World"
[1] "Hello World"
> for (i in 1:3) (print("Hello World"))
[1] "Hello World"
[1] "Hello World"
[1] "Hello World"
通过试用,可以看到,print("Hello World")
被执行了3
次。for
后面的括号是不能缺少的,而语句外面加上大括号或者小括号都是可以正常运行的。
while 结构
while
循环重复地执行一个语句, 直到条件不为真为止。 语法为:
while (cond) statement
需要注意,语句中的条件语句要能够变化,使while
中的条件能够为假不然会陷入无限循环。
> i <- 5
> while (i > 1) {
+ print(i);
+ print("Hello World");
+ i <- i -1;
+ print(i)
+
+ }
[1] 5
[1] "Hello World"
[1] 4
[1] 4
[1] "Hello World"
[1] 3
[1] 3
[1] "Hello World"
[1] 2
[1] 2
[1] "Hello World"
[1] 1
通过print
语句打印出了i的值,可以看到i
从5
开始,每循环一次,i
减少1
,直到i = 1
不再符合要求。
R在处理大数据集时,性能不佳。只要可能, 最好联用R中的内建数值/字符处理函数和apply
族函数。
网友评论