Tutaj jest wektoremR: Radzenie sobie z true, false, Na i NaN
a = c(T,F,F,NA,F,T,NA,F,T)
Chciałbym prostą funkcję, która zwraca wartość true, za każdym razem jest TRUE w a
Fałsz i za każdym razem jest fałsz lub NA w a
.
3 następujące rzeczy nie działają
a == T
identical(T,a)
isTRUE(a)
Oto rozwiązanie
a[-which(is.na(a))]
ale nie wydaje się być straigth naprzód i łatwe rozwiązanie
Czy istnieje inne rozwiązanie ?
Oto niektóre funkcje (i operatorzy) Wiem:
identical()
isTRUE()
is.na()
na.rm()
&
|
!
Jakie są inne funkcje (operatorzy, porady, cokolwiek ...), które są przydatne do czynienia z PRAWDA, FAŁSZ, NA, NaN?
i wreszcie ...
Jakie są różnice pomiędzy NA a NaN?
Czy są inne "logiczne rzeczy" niż T, F, NA i NaN?
Wielkie dzięki!
Aby odpowiedzieć na to pierwsze pytanie, tutaj jest jeden sposób: 'Wektoryzacja (isTRUE) (a)'. –
bardziej wąsko, myślę, że '! Is.na (x) & x' powinno działać, o ile wartości, których się spodziewasz, są definitywnie zawarte w {' TRUE', 'FALSE',' NA', 'NaN'} ... –
Ładne rozwiązania! –