【R语言】流程控制

一、流程控制

R语言中,常用的流程控制函数有:repeat、while、for、if...else、switch。

1、repeat循环

repeat函数经常与 break 语句或 next 语句一起使用。

R 复制代码
repeat ({
  x <- sample(c(1:7),1)
  message("x = ", x, ",你好吗?")
  if (x == 4){
     message("x = ", x, ",继续执行下一次循环!")
     next
  }
  if (x == 7){
     message("x = ", x, ",跳出循环!")
     break
  }
})

2、while循环

R 复制代码
x <- sample(c(1:10),1)
while (x != 4){
x <- sample(c(1:10),1)
message("x= ", x, ",你好,关关")
}

3、for循环

for 循环通过一个迭代器和一个向量参数执行程序代码,它适用于明确代码需要执行次数的情形。

R 复制代码
a <- c(1:10)
for (x in a){
  message("x= ", x, ",你好,悦悦!")
}

4、if...else语句

注意,else 必须与 if 语句的右侧大括号在同一行,否则会报错。

R 复制代码
x <- 10
if (x > 10){
  print("X大于10")
} else{
  print("X小于等于10")
}

if...else 可以反复使用:

R 复制代码
x <- 10
if (x > 10){
  print("Hello")
} else if(x == 10){
  print("你好!")
} else {
  print ("Bonjour!")
}

if ... else可以合起来一起使用:

R 复制代码
x <- 10
y <- ifelse(x > 10, "HELLO", "你好!")
print(x)
print(y)

5、switch语句

switch语句是为了替代会使用很多 if...else 语句的场景,以提高代码的可读性。

R 复制代码
x <- "f"
switch (x, beta = "beta分布", gama = "gama分布", f = "f分布", "其它")
相关推荐
骇客野人3 小时前
Java分布式任务调度方案(完整落地指南)
java·开发语言·分布式
JacksonMx3 小时前
Spring @Async 坑点 + 改造方案
java·开发语言
你怎么知道我是队长4 小时前
IPv6 地址完全解析:从结构到实战
开发语言·php
Dovis(誓平步青云)4 小时前
牛奶不能减成负数:冰箱库存的筛选、去重与不可变更新
android·java·开发语言
OPEN-F4 小时前
Python进阶教程:算法与数据结构入门
开发语言·python
薛定猫AI4 小时前
【技术干货】Claude Code多模型代理与反馈闭环:Python实现可验证的AI编程工作流
开发语言·python·ai编程
XR1234567884 小时前
工厂车间无线网络怎么选?AGV 与复杂环境是分水岭
开发语言·php
zq_63894 小时前
利用 MATLAB 调用 STK Object Model COM 显示雷达受干扰前后探测范围的变化
开发语言·matlab
大黄说说4 小时前
类型安全时代:PHP 8+ 的联合类型、交集类型与泛型(模板)最佳实践
开发语言·安全·php
小弥儿5 小时前
GPT Image 2 提示词库,把散落的生图提示词变成工程资产
开发语言·javascript·gpt·学习