当前位置:K88软件开发文章中心编程全书编程全书02 → 文章内容

R语言中ifelse()函数

减小字体 增大字体 作者:佚名  来源:翔宇亭IT乐园  发布时间:2019-1-3 3:02:11

:2017-12-21 20:53:31

在R语言中,ifelse()函数可以认为是紧凑的if...else结构

其基本语法格式如下:

if(con,statement1,statement2)

con是逻辑条件,当逻辑条件的值为TRUE时,则输出statement1的值,否则输出statement2的值。

举例1:

x<-3

y<-ifelse(x>0, 2*x-1, 2*x)  #含义是如果x是个大于0的值,则输出值为2*x-1的计算值,否则为2*x的计算值。

举例2:

x<-c(1,0,1,0,1,1,0,0)

y<-ifelse(x != 0, 0, 1)  #如果向量x中的元素值不是0的话,就输出0,否则输出1

举例3:

x<-c(1,NA,NA,12,34)

y<-ifelse(is.NA(x),0,x)  #可以处理NA值,如果x中有NA值,则使用0来代替

举例4:

ifelse可以嵌套使用

x<-c(3,10,0,-1,-10)

y<-ifelse(x>0, 2*x-1, ifelse(x==0,0,3*x-10))

执行结果如下图所示:


R语言中ifelse()函数