logo

Rで2つの配列の要素を比較하기 📂R

Rで2つの配列の要素を比較하기

概要

Rはデータの形や構造よりも内容に興味が強い分野でよく使われるため、その比較も便利だ。

包含関係

20190109\_120126.png (全く重要ではないが、例でAは三角数$\displaystyle {{n(n+1)} \over {2}}$で、Bは四角数$m^2$を表している。)

二項演算子%in%を使って二つの配列を比較すると、Aの要素がBに属している場合は真、そうでない場合は偽を返す。文字列を分割する関数strsplit()とその応用を組み合わせることで、文字や単語の検索にも使える。

20190109\_124542.png

交差点と排他的和集合

20190109\_124805.png

intersect()関数とsetdiff()関数は、それぞれ$A \cap B$と$A \triangle B = ( A \cup B ) \setminus ( A \cap B )$を計算する。(やはり全く重要ではないが、$1$と$36$は三角数でありながら四角数であることが分かる。)

コード

A<-((1:14)*(2:15))/2; A
B<-(1:10)^2; B
 
A %in% B
 
c("은") %in% strsplit("달변은 은이요 침묵은 금이다","")[[1]]
 
intersect(A,B)
 
setdiff(A,B)