R语言包括两个逻辑值:TRUE、FALSE,其它编程语言经常称为布尔值,下面就来介绍R语言逻辑的应用。
条件运算产生逻辑值
> a <- 1
> b <- 2
> a>b
[1] FALSE
> a<b
[1] TRUE
> a == b
[1] FALSE
> a != b
[1] TRUE
逻辑运算
&、&&、|、||,不同的是&和|作用在对象的每一个元素上,&&和||只作用在对象第一个元素上
> c <- 3
> (a<b)&&(b<c)
[1] TRUE
这里实际相当于TRUE&&TRUE得到TRUE。
> (a<b)&(b<c)
[1] TRUE
> a1 <- c(TRUE,FALSE,TRUE)
> a2 <- c(FALSE,FALSE,TRUE)
> a1&a2
[1] FALSE FALSE TRUE
> a1&&a2
[1] FALSE
> a1|a2
[1] TRUE FALSE TRUE
> a1||a2
[1] TRUE
all、any
all、any分别是都满足条件或者存在满足,如下
> d <- c(1,2,1)
> all(d == 1)
[1] FALSE
> any(d == 1)
[1] TRUE
还有实际应用非常灵活,比如:
> e <- c(1,2,3,3,2,1)
> print(e ==1)
[1] TRUE FALSE FALSE FALSE FALSE TRUE
> print(e[e == 1])
[1] 1 1
或者,我们这样看,下面FALSE简写为F,TRUE简写为T,则
> luoji <- c(T,F,T,F,T)
> f <- c(1:5)
> print(f[luoji])
[1] 1 3 5
还有比如,%in%
> 1 %in% c(1,2,1)
[1] TRUE
实际中,逻辑运算非常便利,也用的非常广泛,需要灵活运用,可以使得我们的代码轻便、易读、高效。还有很多用法需要实际实践、总结。
觉得有用,欢迎点赞、分享!