R Language
La classe logica
Ricerca…
introduzione
Logico è una modalità (e una classe implicita) per i vettori.
Osservazioni
Abbreviazione
TRUE , FALSE e NA sono gli unici valori per i vettori logici; e tutte e tre sono parole riservate. T e F possono essere abbreviazioni di TRUE e FALSE in una sessione R pulita, ma né T né F sono riservati, quindi l'assegnazione di valori non predefiniti a tali nomi può mettere in difficoltà gli utenti.
Operatori logici
Esistono due tipi di operatori logici: quelli che accettano e restituiscono vettori di qualsiasi lunghezza (operatori elementwise: ! , | , & , xor() ) e quelli che valutano solo il primo elemento in ogni argomento ( && , || ). Il secondo ordinamento viene principalmente utilizzato come argomento cond per la funzione if .
| Operatore logico | Senso | Sintassi |
|---|---|---|
| ! | Non | !X |
| & | element-wise (vectorized) e | x & y |
| && | e (solo elemento singolo) | x && y |
| | | element-wise (vectorized) o | x | y |
| || | o (solo elemento singolo) | x || y |
| xor | element-wise (vectorized) OR esclusivo | xor (x, y) |
Si noti che || l'operatore valuta la condizione di sinistra e se la condizione di sinistra è VERO, la parte destra non viene mai valutata. Questo può far risparmiare tempo se il primo è il risultato di un'operazione complessa. Analogamente, l'operatore && restituirà FALSE senza la valutazione del secondo argomento quando il primo elemento del primo argomento è FALSE.
> x <- 5
> x > 6 || stop("X is too small")
Error: X is too small
> x > 3 || stop("X is too small")
[1] TRUE
Per verificare se un valore è logico, puoi utilizzare la funzione is.logical() .
Coercizione
Per forzare una variabile su una logica, utilizzare la funzione as.logical() .
> x <- 2
> z <- x > 4
> z
[1] FALSE
> class(x)
[1] "numeric"
> as.logical(2)
[1] TRUE
Quando si applica as.numeric() a un logico, verrà restituito un doppio. NA è un valore logico e un operatore logico con una NA restituirà NA se il risultato è ambiguo.
Interpretazione di NA
Vedi i valori mancanti per i dettagli.
> TRUE & NA
[1] NA
> FALSE & NA
[1] FALSE
> TRUE || NA
[1] TRUE
> FALSE || NA
[1] NA