[R]{stats}duplicated() : ベクトル内の重複要素やデータフレーム内の重複行を検出する関数

説明

duplicated()はベクトルやデータフレームの要素を先頭から順に調査していき、重複する要素に対してはTRUE、重複していない要素にはFALSEを返す関数である。

anyDuplicated()はany(duplicated())に対する、一般化されたより効率的なショートカットである。

使用法

duplicated(x, incomparables = FALSE, …)

引数

x : 重複を調査する対象となるベクトルやデータフレーム

incomparables : 比較出来ない値のベクトル。FALSEは特別な値であり、全ての値が比較可能であることを意味する。

返り値

引数xがベクトルの場合は、xと同じ長さの論理値ベクトル。

引数xがデータフレームの場合は、各行に対する論理値ベクトル。 a matrix or array, and

引数xが行列あるいは配列かつMARGIN=0の場合は、論理値配列(次元数と次元名は引数と同じ)

使用例

# 組み込みデータセットirisに対してduplicated()関数を実行してみる
> duplicated(iris)
  [1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
 [14] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
 [27] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
 [40] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
 [53] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
 [66] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
 [79] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
 [92] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
[105] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
[118] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
[131] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE  TRUE
[144] FALSE FALSE FALSE FALSE FALSE FALSE FALSE
# 重複の有無(あるいは重複行の数)を調べるにはtable()と組み合わせるのが便利
> table(duplicated(iris))

FALSE  TRUE 
  149     1

 

コメント