重複の可能性:
この R の再形成は単純なはずですが、
dcast
fromreshape2
は、重複がない数式なしで機能します。次のサンプル データを使用します。
df <- structure(list(id = c("A", "B", "C", "A", "B", "C"), cat = c("SS",
"SS", "SS", "SV", "SV", "SV"), val = c(220L, 222L, 223L, 224L,
225L, 2206L)), .Names = c("id", "cat", "val"), class = "data.frame", row.names = c(NA,
-6L))
これらのデータを取得したいのですが、デフォルトを含むにdcast
関数を適用せずに、値を表にまとめます。value.var
length
この場合、正常に動作します。
> dcast(df, id~cat, value.var="val")
id SS SV
1 A 220 224
2 B 222 225
3 C 223 2206
ただし、変数が重複している場合、 はfun
デフォルトでlength
. それを回避する方法はありますか?
df2 <- structure(list(id = c("A", "B", "C", "A", "B", "C", "C"), cat = c("SS",
"SS", "SS", "SV", "SV", "SV", "SV"), val = c(220L, 222L, 223L,
224L, 225L, 220L, 1L)), .Names = c("id", "cat", "val"), class = "data.frame", row.names = c(NA,
-7L))
> dcast(df2, id~cat, value.var="val")
Aggregation function missing: defaulting to length
id SS SV
1 A 1 1
2 B 1 1
3 C 1 2
理想的には、私が探しているのは、fun = NA
を集約しようとしないように、を追加することvalue.var
です。df2 を dcasting したときの結果:
id SS SV
1 A 220 224
2 B 222 225
3 C 223 220
4. C NA 1