原标题:R语言中灵活运用if实现根据不同条件执行不同的语句

在程序语言中,if一般属于一种分支结构,即根据某个条件执行相关的语句,在R中也不例外。同时,if语句与else配合可以运用到多种条件递归判断中。

单个if语句

if(cond) {expr} 其它语句

即当括弧中的cond条件为TRUE时,则执行表达式expr,否则跳过后执行其后的语句。

num

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

print("执行完毕!")

例子中的%%是求模运算,即求两个数除法的余数。将上面的例子的num改成一个偶数时:

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

if...else结构

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

if条件满足时的情况:

if条件不满足时的情况:

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

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

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

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

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

else一行前面有内容时

或者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语言方面的文章,内容由浅入深,由基本语法到具体的数据分析应用,将我个人在实际中的工作心得分享给大家。返回搜狐,查看更多

责任编辑:

r语言中的或怎么表示什么不同_R语言中灵活运用if实现根据不同条件执行不同的语句...相关推荐

  1. r语言中的或怎么表示什么不同_R语言中$是什么意思

    展开全部 $是S3类的引用方32313133353236313431303231363533e58685e5aeb931333431353430式,@是S4类的引用方式.$比较常用,@比较少用.通常我 ...

  2. r中gglot怎么组合多张图_R语言之可视化①⑧子图组合patchwork包

    目录 R语言之可视化①⑧子图组合patchwork包 ======================= 正文 其实前面已经介绍两个子图组合的博客,但是看到这个patchwork包还是眼前一亮,因为它非常 ...

  3. r语言中残差与回归值的残差图_R语言逻辑回归、方差分析、伪R平方分析

    原标题:R语言逻辑回归.方差分析.伪R平方分析 原文链接:http://tecdat.cn/?p=9589 目录 怎么做测试 假设条件 并非所有比例或计数都适用于逻辑回归分析 过度分散 伪R平方 测试 ...

  4. r语言中残差与回归值的残差图_R语言-如何处理回归中的异常值点

    R语言-如何处理回归中的异常值点 异常观测值 一个全面的回归分析要覆盖对异常值的分析,包括离群点.高杠杆值点和强影响点.这些数据点需要更深入的研究,因为它们在一定程度上与其他观测点不同,可能对结果产生 ...

  5. r语言plot函数x轴y轴名字_R语言中绘图的注释函数小结

    我们知道一个漂亮而清晰的图像的形成指定缺不了图像中细节的注释.那么今天我们就来总结下在R语言中那些注释函数. 首先,我们看下文本注释函数:text(),mtext(), legend().这些函数都是 ...

  6. r语言中残差与回归值的残差图_R语言基础-数据分析及常见数据分析方法

    R表达式中常用的符号 残差(Residuals) 残差是真实值与预测值之间的差,五个分位的值越小模型越精确 系数项与截距项(Coefficients & Intercept)和P值指标 残差标 ...

  7. r语言中残差与回归值的残差图_R语言:多元线性回归和模型检验

    利用swiss数据集进行多元线性回归研究 # 先查看各变量间的散点图 pairs(swiss, panel = panel.smooth, main = "swiss data", ...

  8. r中gglot怎么组合多张图_R语言:多幅图形组合为一幅图形的方法

    备注:学习备忘 在R中使用函数par()或layout()可以容易地组合多幅图形为一幅总括图形. 你可以在par()函数中使用图形参数mfrow=c(nrows, ncols)来创建按行填充的.行数为 ...

  9. r语言热图对列不进行聚类_R语言:手把手教你画pheatmap热图

    R语言:手把手教你画pheatmap热图 微生态 导读: pheatmap默认会对输入矩阵数据的行和列同时进行聚类,但是也可以通过布尔型参数cluster_rows和cluster_cols设置是否对 ...

最新文章

  1. PostgreSQL 理解 template1 和 template0
  2. Linq查询语法(2)
  3. mybatis-物理翻页
  4. 华为错误报告在哪个文件夹_华为手机隐藏的这7个秘密小技能,现在开启,手机还能再用3年...
  5. 通过 dhcp-agent 访问 Metadata - 每天5分钟玩转 OpenStack(168)
  6. Oracle数据库IP访问限制(IP白名单黑名单)
  7. html地区三级联下拉列表,JS-三级联下拉列表
  8. 基于springboot 改造 open-shop小程序商城
  9. R循环有两个_循环子群
  10. 更具时尚感的服饰购物APP设计灵感!
  11. python 学习资料
  12. Ibatis结合MySQL数据库的使用方法
  13. 个推科普漫画,解读《女心理师》中的智能语音识别系统
  14. python高级变量类型
  15. Altium Designer中关于PCB及原理绘制那些高级玩意总结
  16. STM32 烧录程序后上电不工作,但调试模式下可正常工作的解决办法
  17. 卡耐基梅隆大学赢得DARPA网络挑战赛
  18. “新主”难救美赞臣?
  19. Go语言基础(一篇上手go语言基本语法)
  20. Redis各版本的特性及架构

热门文章

  1. 生死狙击无法显示服务器,生死狙击页面无法显示
  2. 前端大屏数据可视化示例
  3. 以json格式输出 bro(zeek)日志
  4. JAVA助农电商商城平台毕业设计,JAVA助农销售网站系统设计与实现,毕设作品参考
  5. Ubuntu系统修复
  6. 更改dede网站地图模板样式
  7. python用turtle画月亮_使用Python的turtle画小猪乔治和哆啦 A 梦
  8. 南方CASS格式DWG的读取
  9. C语言基础知识之define宏定义表达式,undef,内存对齐,a和a的区别,数组知识点,int (*)[10] p,二维数组参数与二维指针参数,函数指针数组,常见的内存错误及对策
  10. ubuntu20.4安装ROS2 Noetic Ninjem