2017-03-01 4 views
0

Ich versuche, dies in R zu tun: (zum Beispiel) lassen x = c(1,2,3,4,5,6,7,8) und y=c(1,2,8)Löschen Vektor-Elemente in einem Vektor

So

x[x!=y] = numeric(0) ???? 

Ich möchte als Ergebnis erhalten 3,4,5,6,7

Gibt es einen praktischen Weg, dies zu tun? Dank

+1

'setdiff in vorhanden sind (x, y)' ist, was Sie – thelatemail

Antwort

1

Verwenden Wert %in% Anpassung und entfernen Sie die Elemente von x die y

x[-which(x %in% y)] 
#[1] 3 4 5 6 7 
+0

wollen Dies funktioniert gut, aber nur, wenn es an mindestens ein Wert. Dies wird nicht das ganze 'x' zurückgeben, wenn' y' null oder leer ist oder 'c (99,98,97)', was irgendwie zu erwarten wäre. –