R では subset 関数でデータフレーム (表形式のデータ) のフィルタができる。でも、論理演算子 || とか && とかを使うとうまく行かない。 | とか & なら大丈夫。
# emp.txt id name inst 101 John Guitar 102 Paul Bass 103 George Guitar 104 Ringo Drums
emp <- read.table('emp.txt', header = TRUE) # id name inst # 1 101 John Guitar # 2 102 Paul Bass # 3 103 George Guitar # 4 104 Ringo Drums print(subset(emp, inst == 'Guitar' || inst == 'Bass')) # NG! # id name inst # 1 101 John Guitar # 2 102 Paul Bass # 3 103 George Guitar # 4 104 Ringo Drums print(subset(emp, inst == 'Guitar' | inst == 'Bass')) # OK # id name inst # 1 101 John Guitar # 2 102 Paul Bass # 3 103 George Guitar
理由は見当がつくけど (|| や && は短絡評価するから特殊) 仕様なのかどうかが分からない。ヘルプには何も書いていない。