广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >R语言中循环的相关知识详解
  • 587
分享到

R语言中循环的相关知识详解

R语言 循环使用R语言 循环 2023-03-19 17:03:02 587人浏览 泡泡鱼
摘要

目录repeatwhile向量for循环break和nextrepeat repeat是最存粹的循环,只要不让出来,就一直重复{}中的代码,可以在命令行中输入 repeat{prin

repeat

repeat是最存粹的循环,只要不让出来,就一直重复{}中的代码,可以在命令行中输入

repeat{print("hello r")}

然后就会看到命令行疯狂地刷新,输出hello r。这个时候不用担心,只需点击命令行右上角出现的红色的stop按钮,就可以中断输出了。

为了让repeat能跳出循环,可以采用break关键字。例如,想输出5次hello r,可以写为

i = 0
repeat{
    if(i==5){break}
    i <- i + 1
    print("hello r")
}

这样就刚好输出5次,效果如下

> repeat{
+     if(i==5){break}
+     i <- i + 1
+     print("hello r")
+ }
[1] "hello r"
[1] "hello r"
[1] "hello r"
[1] "hello r"
[1] "hello r"

while

和repeat相比,while循环直接包含了循环条件,当不满足这个条件时,可以自动跳出

i = 0
while(i<5){
    i <- i+1
    print("hello r")}

其中i<5就是循环条件。这种写法比repeat...break简洁了许多,但效果是相同的

> i = 0
> while(i<5){
+     i <- i+1
+     print("hello r")}
[1] "hello r"
[1] "hello r"
[1] "hello r"
[1] "hello r"
[1] "hello r"

向量

在介绍for循环之前,有必要介绍一下向量。向量可以理解为数的组合,是R语言处理较多数据时的基础数据结构,其创建方法为c(),示例如下

> c1 <- c(1,2,3,4,5)
> c2 <- c(1:5)
> print(c1)
[1] 1 2 3 4 5
> print(c2)
[1] 1 2 3 4 5

这两个数组的内容貌似完全相同,从而可以理解1:5的作用就是生成1到5的所有自然数。但在Environment中,c1的值为num [1:5] 1 2 3 4 5;c2的值却为int [1:5] 1 2 3 4 5。num和int是数据类型的标识,int标识整型;num表示实数类型。

换言之,在R语言中,直接写出的1,2,..均为number类型,而经由c(1:5)创建的向量,则为整型的。

for循环

在有了向量的概念之后,就可以较为方便地理解for循环了,示例如下

for(i in c(1:5)){
    print("hello r")
}

这同样是一个打印5次hello r的例子,但使用的是for循环,其中i in c(1:5)表示将i从1,2,3,4,5中依次拿出,每拿出一个数,就循环一次,所有数拿完了,就结束循环。

这种写法比while还要简洁,但依旧可以实现相同的效果

> for(i in c(1:5)){
+     print("hello r")
+ }
[1] "hello r"
[1] "hello r"
[1] "hello r"
[1] "hello r"
[1] "hello r"

break和next

前面提到,在repeat中,只有通过break才能跳出循环。在while和for中,虽然都有自己的结束循环的方法,但break这个关键字仍然适用。例如,想要打印10以内,所有平方小于10的数

> for(i in c(1:10)){
+     if(i^2>10){break}
+     print(i^2)
+ }
[1] 1
[1] 4
[1] 9

除了break,next这个关键字也可以起到循环控制的作用,其效果为跳过某一次循环,例如,相对10以内的所有奇数做一系列列的操作,常规写法是

for(i in c(1:10)){
    if(i%%2!=0){
        .....
    }
}

但这种写法将处理流程嵌入了新的层级之中,并不优雅,这个时候可用next来跳过不符合要求的情况,示例如下

> for(i in c(1:10)){
+     if(i%%2==0){next}
+     print(i^2+sin(i))
+ }
[1] 1.841471
[1] 9.14112
[1] 24.04108
[1] 49.65699
[1] 81.41212

到此这篇关于R语言中循环的相关知识详解的文章就介绍到这了,更多相关R语言 循环内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: R语言中循环的相关知识详解

本文链接: https://www.lsjlt.com/news/200040.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • R语言中循环的相关知识详解
    目录repeatwhile向量for循环break和nextrepeat repeat是最存粹的循环,只要不让出来,就一直重复{}中的代码,可以在命令行中输入 repeat{prin...
    99+
    2023-03-19
    R语言 循环使用 R语言 循环
  • R语言“循环”知识点详解
    可能有一种情况,当你需要执行一段代码几次。 通常,顺序执行语句。 首先执行函数中的第一个语句,然后执行第二个语句,依此类推。 编程语言提供允许更复杂的执行路径的各种控制结构。 循环语...
    99+
    2022-11-12
  • R语言中循环的相关知识点有哪些
    这篇文章主要介绍“R语言中循环的相关知识点有哪些”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“R语言中循环的相关知识点有哪些”文章能帮助大家解决问题。repeatrepeat是最存粹的循环,只要不让...
    99+
    2023-07-05
  • R语言中因子相关知识点详解
    因子是用于对数据进行分类并将其存储为级别的数据对象。 它们可以存储字符串和整数。 它们在具有有限数量的唯一值的列中很有用。 像“男性”,“女性”和True,False等。它们在统计建...
    99+
    2022-11-12
  • R语言关于数据帧的知识点详解
    数据帧是表或二维阵列状结构,其中每一列包含一个变量的值,并且每一行包含来自每一列的一组值。 以下是数据帧的特性。 列名称应为非空。 行名称应该是唯一的。 存...
    99+
    2022-11-12
  • Python基础之循环语句相关知识总结
    目录一、循环语句介绍二、循环语句的分类三、循环控制语句四、while循环五、break和continue六、for循环七、pass语句的使用一、循环语句介绍  1.循环语句...
    99+
    2022-11-12
  • R语言关于随机森林算法的知识点详解
    在随机森林方法中,创建大量的决策树。 每个观察被馈入每个决策树。 每个观察的最常见的结果被用作最终输出。 新的观察结果被馈入所有的树并且对每个分类模型取多数投票。 对构建树时未使用的...
    99+
    2022-11-12
  • R语言决策基础知识点详解
    决策结构要求程序员指定要由程序评估或测试的一个或多个条件,以及如果条件被确定为真则要执行的一个或多个语句,如果条件为假则执行其他语句。 以下是在大多数编程语言中的典型决策结构的一般形...
    99+
    2022-11-12
  • R语言关于“包”的知识点总结
    R语言的包是R函数,编译代码和样本数据的集合。 它们存储在R语言环境中名为“library”的目录下。 默认情况下,R语言在安装期间安装一组软件包。 随后添加更多包,当它们用于某些特...
    99+
    2022-11-12
  • R语言关于变量的知识点总结
    变量为我们提供了我们的程序可以操作的命名存储。 R语言中的变量可以存储原子向量,原子向量组或许多Robject的组合。 有效的变量名称由字母,数字和点或下划线字符组成。 变量名以字母...
    99+
    2022-11-12
  • R语言基本对象类型知识点详解
    基本向量 包含单类型对象(例如整数,浮点数,复数,文本,逻辑值或者原始型数据)的向量 复合对象 包含一些列基本向量的数据结构,例如列表,配对列表,``S4对象或者环境. 这些对象的特...
    99+
    2022-11-11
  • 详解Java接口的相关知识
    一、接口概述 接口,是Java语言中一种引用类型,是方法的集合,如果说类的内部封装了成员变量、构造方法、成员方法,那么接口的内部主要就是封装了方法,包含抽象方法(JDK 7及以前)、...
    99+
    2022-11-12
  • Java SpringBoot的相关知识点详解
    目录1. IOC和DI2. Spring容器加载Bean/创建对象的时机3. @Autowired注解4. @Configuration配置类5. @Conditional条件注解6...
    99+
    2022-11-12
  • 如何解决R语言循环慢的问题
    小编给大家分享一下如何解决R语言循环慢的问题,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!什么是R语言R语言是用于统计分析、绘图的语言和操作环境,属于GNU系统的一个自由、免费、源代码开放的软件,它是一个用于统计计算和统计...
    99+
    2023-06-14
  • 详解C语言中for循环与while循环的用法
    目录一、单层for循环二、for循环与if选择的嵌套三、多层for循环的嵌套四、while循环五、总结一、单层for循环 引例:C语言实现求1到10的和(用for循环实现) #inc...
    99+
    2022-11-13
  • C语言指针的相关知识点有哪些
    这篇文章将为大家详细讲解有关C语言指针的相关知识点有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。第一站 字符指针----存放字符地址的指针1.使用方法(1)直接使用字符int main()...
    99+
    2023-06-29
  • R语言中基本语法的知识点有哪些
    这篇文章主要介绍R语言中基本语法的知识点有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!我们将开始学习R语言编程,首先编写一个“你好,世界! 的程序。 根据需要,您可以在R语言命令提示符处编程,也可以使用R语言脚...
    99+
    2023-06-14
  • Verilog语言的循环语句示例详解
    目录关键词:while, for, repeat, foreverwhile 循环for 循环repeat 循环forever 循环关键词:while, for, repeat, f...
    99+
    2023-05-15
    Verilog语言循环语句 Verilog 循环
  • R语言中for循环的并行处理方式
    前言 本文用于记录笔者在将R语言中的for语句并行化处理中的一些问题。 实验 这里使用foreach和doParallel包提供的函数实现for语句的并行处理。 for语句脚本 ...
    99+
    2022-11-12
  • R语言多线程运算操作(解决R循环慢的问题)
    已经大半年没有更新博客了。。最近都跑去写分析报告半年没有R 这次记录下关于R循环(百万级以上)死慢死慢的问题,这个问题去年就碰到过,当时也尝试过多线程,but failed........
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作