data.table
を使用する列以外のすべての列でグループ化できますか?私はたくさんの列を持っているので、むしろすべてcolnames
を書くことを避けたいと思います。data.table - 1つの列を除くすべてのグループ
なぜなら、ある列が関連性を持たないことを知っているテーブルで重複を崩壊したいからです。 DT
与えられた、ある
library(data.table)
DT <- structure(list(N = c(1, 2, 2), val = c(50, 60, 60), collapse = c("A",
"B", "C")), .Names = c("N", "val", "collapse"), row.names = c(NA,
-3L), class = c("data.table", "data.frame"))
> DT
N val collapse
1: 1 50 A
2: 2 60 B
3: 2 60 C
、与えDT[, print(.SD), by = !collapse]
などのようなものがあります:
> DT[, print(.SD), .(N, val)]
collapse
1: A
collapse
1: B
2: C
を実際に.(N, val)
を指定しなくては?列名をコピーして貼り付けることでこれを行うことができますが、これを行うためのエレガントな方法があると思いました。 1以外のすべての列によってグループ化するには
を私はこれはほとんどこのhttp://stackoverflow.com/questions/29368785/how-to-pass-all-columns-except-oneのデュープだと思います-as-argument-to-setkey –