BugTrack-R備忘録/1
【%in%】で正規表現を使う
- 投稿者: みゅ
- カテゴリ: なし
- 優先度: 普通
- 状態: 完了
- 日時: 2008年06月20日 12時44分58秒
内容
【%in%】で正規表現を使いたい
%in%は
> get("%in%") function (x, table) match(x, table, nomatch = 0) > 0
という定義
- 数値
> (1:6) %in% 2 [1] FALSE TRUE FALSE FALSE FALSE FALSE
- 文字列
> letters [1] "a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m" "n" "o" "p" "q" "r" "s" [20] "t" "u" "v" "w" "x" "y" "z" > letters %in% c("a","y") [1] TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE [13] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE [25] TRUE FALSE
このままでは正規表現が使えないので
"%inR%" <- function(x, pattern) match(1:length(x), grep(pattern,x), nomatch=0) > 0
で、どうかな
> letters %inR% "a|y" [1] TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE [13] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE [25] TRUE FALSE
R備忘録 /状態空間モデリング/donlp2/その他のメモ