2017-02-16 16 views
1

これは単純なように思えますが、検索をしても答えが見つからず、何が間違っているのか分かりません。具体的には、MARGIN引数でduplicatedと重複している列をチェックできるかどうかを知りたいと思っています。データフレームの列に重複機能を適用する方法

dim(b) 
    [1] 59 130 
duplicated(b, MARGIN = 2) 
    [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 
duplicated(b, MARGIN = 1) 
    [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 

は、効果がありません2 1〜Iは、59行の59件の結果を取得するたびにMARGIN変更:

これは5月コードです。重複した列を削除する最も簡単な方法を見つけようとしており、duplicatedに出くわしました。私は余白の引数を記述している文書の中で重複して動作するはずだと思ったMARGIN the array margin to be held fixed: a single integer.しかし明らかに私はそれをまだ理解していません。

お寄せいただきありがとうございます。

答えて

2

引数はduplicated()の配列メソッドでのみ機能し、データフレームメソッドでは機能しません。しかし、

b[!duplicated(c(b))] 

を使用すると、データフレームの重複した列を削除できます。 c()を使用して "data.frame"クラスを削除し、bをリストにします。そして、duplicated()というデフォルトの方法がリストに作用します。詳細については、help(duplicated)を参照してください。

関連する問題