裏 RjpWiki

Julia ときどき R, Python によるコンピュータプログラム,コンピュータ・サイエンス,統計学

大域変数への代入

2010年08月30日 | ブログラミング

差集合的なにかAdd StarwakutekaRion778

集合は定義から、同じ要素は含まないわけですが、そうゆうのも許して欲しいときがある。こういう2つのベクトルがあったとき

x <- c("a", "b", "c", "a", "a", "b")
y <- c("c", "d", "c")

Rでの差集合演算を使うともちろんこうなる。

> setdiff(x, y)
[1] "a" "b"

定義からいくともちろん正しいのだが

c("a", "b", "a", "a", "b")

で返ってきて欲しい場合もある。というわけで、ごねくりまわしてなんとかしてみた。頭が悪いので、きっともっとよい方法があるに違いない。まる。

大域変数への代入があるのであまりよくないが以下のようにすれば?

> lapply(y, function(i) x <<- x[!(x %in% i)])[[length(y)]]
[1] "a" "b" "a" "a" "b"

コメント (1)    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« 居心地悪し | トップ | もっと簡単な方法がある »
最新の画像もっと見る

1 コメント

コメント日が  古い順  |   新しい順
こんなのはいかが? (VTA)
2019-12-26 12:57:58
x[!(x %in% y)]
返信する

コメントを投稿

ブログラミング」カテゴリの最新記事