W jaki sposób można podzestawić wiersze w ramce danych w R na podstawie wektora wartości?

Mam dwa zestawy danych, które mają być tego samego rozmiaru, ale nie są. Muszę przyciąć wartości z A, które nie są w B i odwrotnie, aby wyeliminować szum z wykresu, który wchodzi w raport. (Nie martw się, te dane nie są trwale usuwane!)

Przeczytałem następujące informacje:

Wybór kolumn w ramce danych R w oparciu o te * nie * w wektorzehttp://www.ats.ucla.edu/stat/r/faq/subset_R.htmJak połączyć wiele warunków, aby ustawić ramkę danych za pomocą „LUB”?

Ale wciąż nie jestem w stanie tego zrobić. Oto mój kod:

bg2011missingFromBeg <- setdiff(x=eg2011$ID, y=bg2011$ID)
#attempt 1
eg2011cleaned <- subset(eg2011, ID != bg2011missingFromBeg)
#attempt 2
eg2011cleaned <- eg2011[!eg2011$ID %in% bg2011missingFromBeg]

Pierwsza próba po prostu eliminuje pierwszą wartość w wynikowym wektorze setdiff. Druga próba przynosi i nieporęczny błąd:

Error in `[.data.frame`(eg2012, !eg2012$ID %in% bg2012missingFromBeg) 
:  undefined columns selected

questionAnswers(4)

yourAnswerToTheQuestion