Załóżmy, że mam wektor x<-c(1,2,NA,4,5,NA)
.Różnice między wektorami _ z uwzględnieniem NA
ubiegać jakieś mitologiczne kod do tego wektora, co skutkuje innym wektorze, y<-c(1,NA,3, 4,10,NA)
Teraz pragnę dowiedzieć się w której pozycjonuje moje dwa wektory różnią, gdzie liczę dwa NA
s traktować tak samo, i jeden NA
i inny niż NA
(np. drugi element z dwóch przykładowych wektorów).
W szczególności, dla mojego przykładu, chciałbym skończyć z wektorem posiadającym c(2,3,5)
.
Dla mojego przypadku użycia, nie jestem zadowolony z wektora zmiennych logicznych, ale oczywiście mogę łatwo przekonwertować (which
), więc przyjmuję to również.
Mam kilka rozwiązań takich jak:
simplediff<-x!=y
nadiff<-is.na(x)!=is.na(y)
which(simplediff | nadiff)
ale czuje jakbym wyważania otwartych drzwi tutaj. Jakieś lepsze opcje?
Wydaje mi się całkowicie uzasadnione. –
Co to jest kod mitologiczny? – James
@ James: to jak ta stara kreskówka z kilkoma przerażającymi równaniami na szczycie tablicy, a następnie stwierdzenie "następna cuda", po której następuje pożądane końcowe równanie. –