В R, есть ли какой-нибудь простой способ сделать множественные (то есть "мешочные") различия, подобные setdiff()
, но сохранить порядок и кратность во входных векторах?
Например, предположим,x <- c(1,2,2,3,1,5,4,4,5,3)
и y <- c(2,1,5,5)
.Я ищу функцию bagdiff()
такую, чтобы bagdiff(x,y)
было c(2,3,1,4,4,3)
, то есть были удалены первые вхождения элементов y
в x
, с кратностью.
(В моемреальная задача Меня не очень заботит порядок вывода, поэтому важно только, чтобы кратность была правильной, но общий упорядоченный случай, кажется, стоит решить.)