5.3 Operadores lógicos
Los operadores lógicos son usados para operaciones de álgebra Booleana, es decir, para describir relaciones lógicas, expresadas como verdadero (TRUE) o falso (FALSO).
| Operador | Comparación | Ejemplo | Resultado |
|---|---|---|---|
x | y |
x Ó y es verdadero | TRUE | FALSE |
TRUE |
x & y |
x Y y son verdaderos | TRUE & FALSE |
FALSE |
!x |
x no es verdadero (negación) | !TRUE |
FALSE |
isTRUE(x) |
x es verdadero (afirmación) | isTRUE(TRUE) |
TRUE |
Los operadores | y & siguen estas reglas:
|devuelveTRUEsi alguno de los datos esTRUE&solo devuelveTRUEsi ambos datos esTRUE|solo devuelveFALSEsi ambos datos sonFALSE&devuelveFALSEsi alguno de los datos esFALSE
Estos operadores pueden ser usados con estos con datos de tipo numérico, lógico y complejo. Al igual que con los operadores relacionales, los operadores lógicos siempre devuelven TRUE o FALSE.
Para realizar operaciones lógicas, todos los valores numéricos y complejos distintos a 0 son coercionados a TRUE, mientras que 0 siempre es coercionado a FALSE.
Por ejemplo, 5 | 0 resulta en TRUE y 5 & FALSE resulta en FALSE. Podemos comprobar lo anterior con la función isTRUE().
5 | 0## [1] TRUE
5 & 0## [1] FALSE
isTRUE(0)## [1] FALSE
isTRUE(5)## [1] FALSE
Estos operadores se pueden combinar para expresar relaciones complejas.
Por ejemplo, la negación FALSE Y FALSE dará como resultado TRUE.
!(FALSE | FALSE)## [1] TRUE
También podemos combinar operadores lógicos y relacionales, dado que esto últimos dan como resultado TRUE y FALSE.
## [1] TRUE