data.tableに重複する行があります。いくつかの変数はリストです。重複する行を削除し、データテーブルを使用してグループごとに1行に集約します。
ID l29 s14 s2 s7 s71 s91
12345 NULL 3 NULL NULL NULL NULL
12345 NULL NULL 1 NULL NULL NULL
12345 NULL NULL NULL 2 NULL NULL
12345 NULL NULL NULL NULL c(4.5, 8, 9, 10) NULL
12345 NULL NULL NULL NULL c(4.5, 8, 9, 10) NULL
12345 NULL NULL NULL NULL c(4.5, 8, 9, 10) NULL
12345 NULL NULL NULL NULL NULL c(6, 7)
12345 11 NULL NULL NULL NULL NULL
12345 NULL NULL NULL NULL c(4.5, 8, 9, 10) NULL
12345 NULL NULL NULL NULL NULL c(6, 7)
私は以下のように上記の1行にまとめたいと思います:
12345 11 3 1 2 c(4.5, 8, 9, 10) c(6, 7)
誰かが、私は、これはそれをしない願って、データをdputに頼ま?
structure(list(SSN_TAX_ID = c("12345", "12345", "12345", "12345",
"12345", "12345", "12345", "12345", "12345", "12345"), L29 = list(
NULL, NULL, NULL, NULL, NULL, NULL, NULL, 11, NULL, NULL),
S14 = list(3, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL), S2 = list(NULL, 1, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL), S7 = list(NULL, NULL, 2, NULL, NULL,
NULL, NULL, NULL, NULL, NULL), S71 = list(NULL, NULL,
NULL, c(4.5, 8, 9, 10), c(4.5, 8, 9, 10), c(4.5, 8, 9,
10), NULL, NULL, c(4.5, 8, 9, 10), NULL), S91 = list(
NULL, NULL, NULL, NULL, NULL, NULL, c(6, 7), NULL, NULL,
c(6, 7))), .Names = c("SSN_TAX_ID", "L29", "S14", "S2",
"S7", "S71", "S91"), class = "data.frame", row.names = c(NA,
-10L))
あなたが例をdputてもらえますか?リストの 'unique 'はRの中では混乱しますが、' DT [、lapply(.SD、unique)] 'がそれを行うかもしれません。 – Frank
@Frankそれは重複した行を結合しましたが、重複していない情報を1つの行に入れたかったのです。あなたのメソッドを使用して、第1行はそれ自身の行であり、それは複製ではなく、複製された行はそれ自身の行です。複製されていない行も含めるにはどうすればよいですか? – user3067851