首 页IT知识库翔宇问吧收藏本站
当前位置:翔宇亭IT乐园IT知识库R语言

R语言中if结构的使用

减小字体 增大字体 作者:biye5u.com  来源:本站原创  发布时间:2017-12-05 12:21:26

与其它高级语言类似,R中也有自己的控制结构,主要包括分支结构和循环结构。灵活使用R的控制结构可以帮助我们处理更加复杂的数据分析任务。

本文首先探讨R中分支结构的if...else结构。

if/else分支结构主要用于两种分支情况下,主要使用格式有三种情况:

(1)只有一个if的结构

if(cond) {expr}

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

(2)if...else结构

if(cond) {cons.expr} else {alt.expr}

即条件cond为TRUE时,则执行表达式cons.expr,否则执行alt.expr

(3)if的嵌套使用

常见形式如下:

if(cond_1)
    {expr_1}
else if(cond_2)
   {expr_2}
else if(cond_3)
   {expr_3} else {expr_4}

注意:在上面的三种情况下,如果表达式只有一个时,可以省略大括号{};

同时,else部分不能单独在一行,即在else同一行中,else前面应有内容。除非,if...else放在大括号中。

下面是几个例子:

(1)单个if

num <- 6
if(num%%2==0)
    print("是偶数")
print("Hello,biye5u.com")

本例子中,%%为求余数运算符,如果num能被2整除余数为0,则输出是偶数,同时不管if的条件是否满足,Hello,biye5u.com的内容都会被输出来。

运行效果如下图所示

R语言中if分支结构

(2)if...else

num<-6
if(num%%2==0)
    print("是偶数")  else  print("是奇数")   #else不能单独一行,否则报错:意外的'else' in "else"

print("Hello,biye5u.com")

下图给出了num为5,num为6,else单独一行时,if...else放在大括号中时的4中情况下的输出情况:

R语言中if的使用方式

(3)if/else的嵌套情况

score <- 89
if( score>=0 && score<60)
  print("不及格")   else if(score < 70)
  print("及格")      else if(score < 80)
  print("中等")     else if(score < 90)
  print("良好")    else if(score <= 100)
  print("优秀")   else
  print("成绩不合理")

若将以上内容放在大括号中,会更加直观一些,如下:

score <- 89
{
if( score>=0 && score<60)
    print("不及格")
else if(score < 70)
    print("及格")     
else if(score < 80)
    print("中等")     
else if(score < 90)
    print("良好")   
else if(score <= 100)
    print("优秀")   
else
    print("成绩不合理")
}

本文(完)

本文为本站原创,如需转载,请注明出处:R语言中if语句的使用-翔宇亭IT乐园

知识评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论

用户名: 查看更多评论

分 值:100分 85分 70分 55分 40分 25分 10分 1分

内 容:

            请注意用语文明且合法,不要发布带有攻击性、侮辱性的言论,谢谢合作!

         通知管理员 验证码:

关于本站 | 网站帮助 | 广告合作 | 网站声明 | 友情连接 | 网站地图 | 用户守则 | 联系我们
本站大多数内容来自互联网或网站会员发布,如有侵权,请来信告之,谢谢!
Copyright © 2007-2017 biye5u.com. All Rights Reserved.
网站备案号:黑ICP备13005378号-3