setdiff()Rでは、入力ベクトルの順序と多重度を維持しながら、マルチセット(つまり「バッグ」)の違いを行う簡単な方法はありますか?
たとえば、 とx <- c(1,2,2,3,1,5,4,4,5,3)としy <- c(2,1,5,5)ます。bagdiff()のような関数を探しています。bagdiff(x,y)つまり、 inc(2,3,1,4,4,3)の要素の最初の出現が削除され、多重度があります。yx
(私の実際のタスクでは、出力の順序はあまり気にしないので、多重度が正しいことだけが重要ですが、一般的な順序付けられたケースは解決する価値があるようです。)