考えるデータを因子列に変換します。は、複数のブール値の列に次のようになります
new.names <- sort(unique(DT$x))
DT[, paste0('col', new.names) := lapply(new.names, function(i) DT$x==i), with=FALSE]
をしかし、これはおそらくdata.table代替より遅い厄介なlapply
を使用して、このソリューションは非常に「data.tableっぽい」ではないとして私を打つ:
は、私はこのようにこれを行うことができます。
これらの新しい列を作成する方法はありますか?
う何か '役に立つことmodel.matrix'などもありますか? 'model.matrix(〜cols-1)' – BenBarnes