R 语言学习教程,从入门到精通,R 循环(8)

1、R 循环

有的时候,我们可能需要多次执行同一块代码。一般情况下,语句是按顺序执行的:函数中的第一个语句先执行,接着是第二个语句,依此类推。
编程语言提供了更为复杂执行路径的多种控制结构。
循环语句允许我们多次执行一个语句或语句组,下面是大多数编程语言中循环语句的流程图:
在这里插入图片描述
R 语言提供的循环类型有:
repeat 循环
while 循环
for 循环
R 语言提供的循环控制语句有:
break 语句
Next 语句
循环控制语句改变你代码的执行顺序,通过它你可以实现代码的跳转。

1.1、循环类型

repeat
repeat 循环会一直执行代码,直到条件语句为 false 时才退出循环,退出要使用到 break 语句。
语法格式如下:

repeat { 
    // 相关代码 
    if(condition) {
       break
    }
}

以下示例在变量 cnt 为 5 时退出循环,cnt 为计数变量:

v  ,
cnt  

 
   v
   cnt  cnt
   
   cnt

执行以上代码,输入结果为:

[1] "Google" "Nhooo"
[1] "Google" "Nhooo"
[1] "Google" "Nhooo"
[1] "Google" "Nhooo"

while
只要给定的条件为 true,R 语言中的 while 循环语句会重复执行一个目标语句。
语法格式如下:

while(condition)
{
   statement(s);
}

在这里,statement(s) 可以是一个单独的语句,也可以是几个语句组成的代码块。
condition 可以是任意的表达式,当为任意非零值时都为 true。当条件为 true 时执行循环。 当条件为 false 时,退出循环,程序流将继续执行紧接着循环的下一条语句。
以下示例在在变量 cnt 小于 7 时输出 while 语句块中的内容,cnt 为计数变量:

v  ,
cnt  

 cnt   
   v
   cnt  cnt

执行以上代码,输入结果为:

[1] "Google" "Nhooo"
[1] "Google" "Nhooo"
[1] "Google" "Nhooo"
[1] "Google" "Nhooo"
[1] "Google" "Nhooo"

1.2、for

R 编程语言中 for 循环语句可以重复执行指定语句,重复次数可在 for 语句中控制。
语法格式如下:

for (value in vector) {
    statements
}

R 语言的 for 循环特别灵活,不仅可以循环整数变量,还可以对字符向量,逻辑向量,列表等数据类型进行迭代。
以下示例输出 26 个字母对前面四个字母:

v  
  i  v 
   i

执行以上代码,输入结果为:

[1] "A"
[1] "B"
[1] "C"
[1] "D"

1.3、循环控制

break
R 语言的 break 语句插入在循环体中,用于退出当前循环或语句,并开始脚本执行紧接着的语句。
如果你使用循环嵌套,break 语句将停止最内层循环的执行,并开始执行的外层的循环语句。
break 也常用语 switch 语句中。
语法格式如下:

break

以下示例在 变量 cnt 为 5 时使用 break 退出循环,cnt 为计数变量:

v <- c("Google","Nhooo") cnt <- 2 repeat {   print(v)   cnt <- cnt+1     if(cnt > 5) {      break   } }

执行以上代码,输入结果为:

[1] "Google" "Nhooo"
[1] "Google" "Nhooo"
[1] "Google" "Nhooo"
[1] "Google" "Nhooo"

1.4、next

next 语句用于跳过当前循环,开始下一次循环(类似其他语言的 continue)。
语法格式如下:

next

以下示例输出 26 个字母的前面 6 个字母,在字母为 D 的时候跳过当前的循环,进行下一次循环:

v  
  i  v 
   
    i     
      
   
   i

执行以上代码,输入结果为:

[1] "A"
[1] "B"
[1] "C"
[1] "E"
[1] "F"
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值