在R语言中,if属于一种分支结构,即根据某个条件执行相关的语句。R中的if语句与else配合主要有3种结构。

  单个if语句

  if(cond) {expr} 其它语句

  即当括弧中的cond条件为TRUE时,则执行表达式expr,否则跳过后执行其后的语句。看下面的例子,例子中的%%是求模运算,即求两个数除法的余数。

  num<-7

  if(num%%2==0) print("是偶数")

  print("执行完毕!")

  判断某个数是否为偶数

  将上面的例子的num改成一个偶数时:

  

  当num为偶数时

  从这两个例子中可以看出,if的条件如果满足,则执行仅挨着if语句的那一条语句,不满足则执行if语句后面的其它语句。if中可以有多个语句,看下面的例子:

  

  if...else结构

  其执行原理为:如果if后的条件满足,则执行if与else间的语句,否则执行离else最近的一条语句,如果if块和else块有多条语句,需要将多个语句放在花括号中。

  if条件满足时的情况:

  

  if条件满足时

  if条件不满足时的情况:

  

  if条件不满足时的情况

  每个分支有多个语句时,需要放在花括号中:

  

  每个分支有多个语句的情况

  需要注意的是,else不能单独成一行,它的前边必须有内容,哪怕像上面图中所示的一个花括号也可以,否则会报错误

  else一行前面无内容时会报错

  改成下面的样子就可以正确了:

  

  else一行前面有内容时

  或者else单独成行时,也可以将if 和else语句整体放在一个花括号里:

  

  将if...else整体放在花括号里的情况

  多个if...else嵌套情况

  有时我们在处理实际问题时,可能有多个条件,根据不同的条件选择不同的分支执行,其结构可能是:

  (1) if(条件1){语句块1} else if(条件2){语句块2} ... else{语句块}

  (2)if(条件){if(条件1){语句块1} else{语句块2} else if(条件2}{if(条件3}...else...} else...

  这样就可以帮助我们实现更加复杂的处理。下面看一个例子,就是输入一个分数,输出其对应的等级。

  多个条件的组合

  如果将语句放在花括号里,要更加清晰一些:

  放在花括号里更加清晰一些

  欢迎关注本号。本号将持续更新R语言方面的文章,内容由浅入深,由基本语法到具体的数据分析应用,将我个人在实际中的工作心得分享给大家。郑州×××医院:www.zzchxb120.com郑州人流多少钱:www.zzchxb120.com

转载于:https://blog.51cto.com/14231577/2365796

R语言中if语句使用方法之超详细教程相关推荐

  1. append()方法_超详细教程 | pandas合并之append和concat

    ​ 本篇文章主要介绍了pandas中对series和dataframe对象进行连接的方法:pd.append()和pd.concat(),文中通过示例代码对这两种方法进行了详细的介绍,希望能对各位py ...

  2. r语言中的while循环_R编程中的While循环

    r语言中的while循环 In addition to the for loop we discussed earlier, R also offers another kind of loop to ...

  3. 1071svm函数 r语言_如何利用R语言中的rpart函数建立决策树模型

    决策树是根据若干输入变量的值构造出一个适合的模型,以此来预测输出变量的值,并用树形结构展示出来.决策树主要有两个类别:分类树和回归树.分类树主要针对离散的目标变量,回归树则针对连续的目标变量.R语言中 ...

  4. 相关系数pearson、spearman、kendall和R语言中的cor/or.test()

    相关系数pearson.spearman.kendall和R语言中的cor/cor.test 1. 相关系数pearson.spearman.kendall 2. R语言cor函数和cor.test函 ...

  5. R语言中的apply函数族

    原文出处:http://blog.fens.me/r-apply/ 前言 刚开始接触R语言时,会听到各种的R语言使用技巧,其中最重要的一条就是不要用循环,效率特别低,要用向量计算代替循环计算. 那么, ...

  6. R语言中的attach()与detach()

    R语言中的attach()与detach() 我是学习R语言的新手,新手嘛只能做一只搬运知识的小蚂蚁,但我也是一只认真的小蚂蚁,所有的分享都是在自己遇到的问题基础上,结合前人的学习自己总结过的.这是我 ...

  7. c语言switch语句支持的字符有哪些,C语言中switch()语句的括号内可以是什么型别的呢?...

    C语言中switch()语句的括号内可以是什么型别的呢?以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! C语言中swit ...

  8. 在c语言中for的作用,c语言中for语句的用法

    C语言语言中FOR的用法 for 是一个循环语句,和while是类似的,for一般的用法有: for(i=0;i<10;i++) { printf("hello world" ...

  9. c语言 函数参数 const,c语言中const的使用方法

    c语言中const的使用方法 发布时间:2020-06-22 16:03:32 来源:亿速云 阅读:188 作者:Leah 这篇文章运用简单易懂的例子给大家介绍c语言中const的使用方法,代码非常详 ...

最新文章

  1. js实现图片无缝循环跑马灯
  2. Scala集合体系:可变集合和不可变集合
  3. Mac终端 bash和zsh切换方法
  4. 数据结构与算法 / 哈希算法
  5. Android接入支付宝支付实现
  6. 各大公司容器云的技术栈对比
  7. nginx rtmp代码架构1 hook点总结
  8. Linux修改密码后不能SSH远程登录了
  9. js正则匹配闭合标签_正则匹配闭合HTML标签(支持嵌套)
  10. java远程执行命令报错java.io.IOException: Cannot run program “ifconfig“: error=2, No such file or directory
  11. 虚拟 Linux【转】
  12. python title函数意义_Python 字符串首字母大写-Python设置字符串首字母大写-python title()作用-python title函数-嗨客网...
  13. 管理感悟:派谁进行技术合作
  14. Cisco Packet Tracer思科模拟器中无线网络的基本配置
  15. Java 拾遗补阙 ----- 继承私有属性
  16. linux native是啥分区,Linux native是什么意思
  17. 行走在网格之间:微博用户关系模型
  18. Photoshop安装方法
  19. Deepin搭建Qt5开发环境
  20. html的li标签结合layui实现滚动列表

热门文章

  1. sqlserver_identity
  2. html5/haXe开发偶感
  3. cisco 基础配置命令中文解析 1
  4. WebSphere中连接池的配置
  5. Kaseya 修复供应链勒索攻击事件中被利用的缺陷
  6. 黑客游戏未发先被黑:游戏开发商Ubisoft 和 Crytek遭勒索攻击
  7. WebViewJavascriptBridge用法
  8. JAVA 微信支付 native方式
  9. putty连上l虚拟机中的linux要点
  10. 开源日志系统log4cplus(三)