0

私は1つの大きなデータフレームを持っています

ID  code    N
1    412    2
1    A341   1
1    A520   16
1    47     9
2    283    4
2    412    3 
.......

IDは担当者です。コードは 412 598 A333 で、N heve>3 を割り当てると、このようにテーブルを並べ替えることができます

ID  code_412    code_598  code_A333
1     0             0         0
2     1             0         0
3     0             1         1

ID に code412 が 3 回ある場合、または code598 が 3 回ある場合、または codeA333 が 3 回ある場合、キーは 1 になります。

4

1 に答える 1

1

質問はかなり不明確です。IDとの組み合わせはcodeユニークですか?すべての組み合わせが発生しますか?そうでない場合、欠落している組み合わせをどのように処理する必要がありますか?

現時点では、IDcodeは一意ではなく、欠落している組み合わせは0、対応するエントリに対して を取得する必要があると思います。これは、次を使用したソリューションreshape2::dcastです。

library( "reshape2" )
mdf <- dcast( mdf,  ID ~ code, value.var = "N",
              fun.aggregate=function(x) ifelse( sum(x) < 3, 0, 1 )
            )
colnames( mdf )[-1] <- paste( "code", colnames(mdf)[-1], sep = "_" )

mdf
ID code_283 code_412 code_47 code_A341 code_A520
1  1        0        0       1         0         1
2  2        1        1       0         0         0
于 2013-05-25T14:32:43.553 に答える